Forgot your password?
typodupeerror
Firefox Chrome Math Software

Firefox Is the First Browser To Pass the MathML Acid2 Test 134

Posted by timothy
from the assembling-data-please-wait dept.
An anonymous reader writes "Frédéric Wang, an engineer at the MathJax project, reports that the latest nightly build of Firefox now passes the MathML Acid2 test. Screenshots in his post show a comparison with the latest nightly Chrome Canary, and it's not pretty. He writes 'Google developers forked Webkit and decided to remove from Blink all the code (including MathML) on which they don't plan to work in the short term.'"
This discussion has been archived. No new comments can be posted.

Firefox Is the First Browser To Pass the MathML Acid2 Test

Comments Filter:
  • by johnjones (14274) on Friday May 03, 2013 @10:13PM (#43626505) Homepage Journal

    I simply cant believe this...

    MathML is a pretty important to allowing papers to be...

    • by hairyfeet (841228)
      But how many of your average users are gonna be going to pages where MathML would be useful? if it was 3% I'd be amazed. If Google isn't gonna be spending time working on it right now its probably better to remove it entirely as that makes one less vector for a browser exploit.
      • by Anonymous Coward on Friday May 03, 2013 @11:23PM (#43626859)

        Personally I browse pages that use MathML every single day (literally), opengl.org ref pages, have MathML scattered throughout - I've never bothered installing chrome on a workstation once due to lack of MathML support, and don't ever plan on doing so until it can (among many other missing features).

        • by hairyfeet (841228)

          And how many NORMAL users are gonna be going to OpenGL ref pages? This is no different than the guy a few weeks back that said AMD chips weren't useful at any price because they bog down on acoustical wave simulations...how many users actually do acoustical wave simulations?

          Of course I see this as a symptom of "In ur butt" syndrome. Just like the old Eddie Murphy song the devs are trying to jam everything up the butt of your browser, the problem is not only is jamming all that stuff up the browser gonna m

      • by dgatwood (11270) on Friday May 03, 2013 @11:26PM (#43626871) Journal

        The reason to improve MathML support isn't browsers. It's eBook readers that share the underlying rendering engines. Lots of textbook publishers want to use MathML, but without robust, reliable, visually appealing support, everybody has to do awful hacks with inline images or (hopefully) SVG instead.

        • by tyrione (134248) on Saturday May 04, 2013 @12:20AM (#43627077) Homepage

          The reason to improve MathML support isn't browsers. It's eBook readers that share the underlying rendering engines. Lots of textbook publishers want to use MathML, but without robust, reliable, visually appealing support, everybody has to do awful hacks with inline images or (hopefully) SVG instead.

          Spot on. EPub 3.x with MathML 3.0 is vital to work in digital publishing for iOS, Android, etc.

      • MathML is a static content description language like (pure) HTML, not a programming language like JavaScript. Moreover, it should use the same parser used for all other XML based content (like XHTML), which is most likely even the same parser which is used to parse HTML. So I cannot see how MathML could be used for an exploit which is not possible for HTML (unless you did a really crappy implementation).

      • But how many of your average users are gonna be going to pages where MathML would be useful? if it was 3% I'd be amazed.

        Again with the "if it's not useful to the 51% it's not useful to anyone" meme. For one thing, the Web was invented for use by academia. For another, pretty much everyone who goes to college or even high school ends up seeing an equation at some time.

        • by hairyfeet (841228)

          The needs of the many outweigh the needs of the few...there is NO point in adding yet more bloat and complexity to a browser, not to mention giving malware writers one more attack vector in said browser, all to support a teeny tiny niche that would probably just as well if not better supported by using a browser plug in to a real language like Java.

          At the end of the day making everybody put up with a more bloated browser just to keep a couple of percent from getting their panties in a wad just isn't worth

          • The needs of the many outweigh the needs of the few

            Not in all cases, as shown in historical examples of tyranny of the majority [wikipedia.org]. It lets those with wealth get away with assaults on freedom because the majority don't feel like keeping themselves informed. Case in point: In the United States in the mid-twentieth century, the majority of European descent wanted to force "colored" people, mostly of African descent, to use a different drinking fountain. Was that an acceptable compromise to support "the needs of the many"?

            there is NO point in adding yet more bloat and complexity to a browser, not to mention giving malware writers one more attack vector in said browser, all to support a teeny tiny niche that would probably just as well if not better supported by using a browser plug in to a real language like Java.

            Flash and Java themselves have a track re

      • But how many of your average users are gonna be going to pages where MathML would be useful? if it was 3% I'd be amazed.

        You'd be amazed to discover that more than 3% of netizens use Wikipedia?

    • by narcc (412956) on Friday May 03, 2013 @11:25PM (#43626867) Journal

      It's a real shame -- MathML is abysmal.

      A few zillion years ago, we had the math tag, which was similar to TeX. It died on the vine, but would have been MUCH better than the cruel joke that is MathML.

      • by Anonymous Coward

        It died on the vine, but would have been MUCH better than the cruel joke that is MathML.

        Only for those writing HTML documents by hand. Most people use automated tools to generate the required code - makes no difference to them how it is finally presented to the web browser. And those people who do write by hand are the same people who can write a script to extract, convert, then replace their TeX code with MathML.

        And in regards to the web browser, formatting the code in a format that can be parsed by the existing HTML engine greatly reduces the effort required to implement the tags. This is

        • by TheRaven64 (641858) on Saturday May 04, 2013 @04:16AM (#43627763) Journal

          MathML attempts to separate the content and presentation. This is fine if you have a tool that properly supports both (I've never used one, maybe Mathematica or similar does?), but it sucks for most editors. The idea is that you can have a single format that describes both how to lay out equations and their semantics. In practice, pretty much everyone who generates MathML does it from the TeX equivalent and so only ever gets the presentation form. The other advantage of MathML is that each individual element is exposed via the DOM, so it's easy to manipulate equations from JavaScript, although I don't think I've ever seen that done either.

          Part of the problem with a format that is basically impossible for humans to write is that it also ends up being difficult to produce tools that can write and display it, which is why it's taken 10 years or so for MathML to get even a token amount of support in mainstream browsers...

          • The other advantage of MathML is that each individual element is exposed via the DOM, so it's easy to manipulate equations from JavaScript, although I don't think I've ever seen that done either.

            I believe that MathJax does this. Anyway, you can either generate MathML inside a browser with DOM if you're targeting it, or you can write a script that converts it to something else (SVG, a canvas program) if you're implementing it. If you're especially kinky, you can do both. :-)

        • by emt377 (610337)

          Most people use automated tools to generate the required code - makes no difference to them how it is finally presented to the web browser. And those people who do write by hand are the same people who can write a script to extract, convert, then replace their TeX code with MathML.

          Eh. A math tag would have allowed me to type math in my response to you right here, in postings to facebook, email, or anywhere HTML is used. Requiring a site to source scripts guarantees it'll never be more than peripheral and utterly irrelevant.

          • A math tag would have allowed me to type math in my response to you right here

            HTML also supports Γ but you'll not get Slashdot to display it. What makes you think that a math tag would be supported, if it doesn't even support all characters usually found in formulas?

  • by Anonymous Coward
    It's the worst HTML tag EVER.
    • by corychristison (951993) on Friday May 03, 2013 @10:30PM (#43626609)

      My many web design/development clients would disagree with you. I don't even want to recall the times I've had to tell them No for blinking things.

      Unfortunately they think blinking == attention getting, whereas we think blinking == f*cking irritating.

      • It's the worst HTML tag EVER.

        My many web design/development clients would disagree with you. I don't even want to recall the times I've had to tell them No for blinking things.

        Unfortunately they think blinking == attention getting, whereas we think blinking == f*cking irritating.

        <BLINK> tags don't annoy people, people do. Don't give them a blinking tag, they'll just create a .GIF or worse a jittering noisy Flash animation. I used a blinking tag in a non-annoying way: to emulate a DOS like cursor for my temporary landing page.

      • by femtobyte (710429)

        Unfortunately, f*cking irritating == attention getting, so by the commutative quality of the equivalency group, they are technically correct, and we are f*cking screwed.

      • by caspy7 (117545)

        Unfortunately they think blinking == attention getting, whereas we think blinking == f*cking irritating.

        Admittedly, they're right. Fortunately, we're righter.

  • by Anonymous Coward

    Congratulations Mozilla! Still striving for standards means Firefox's job of keeping the others in check is just as important as ever.

  • Mathematics is one of those fields that could use some ISO standards.

    There are critics of C++ that say the language is just pieces and parts hacked together. Even if that is true, mathematics takes the undisputed crown of bizarre hacked together symbols.

    The symbols used in mathematics are unintelligible, inconsistent, don't even use a standard language character set and cannot be represented in a programming language.

    These mathematical symbols either need to be modernized to come to a standardization or di

    • by Anonymous Coward

      Because if it was made easier to understand then the aliens visiting us now would figure out how far behind them our tech is, and conquer us in 7 minutes.

    • Re: (Score:2, Insightful)

      by Anonymous Coward

      Mathematics is one of those fields that could use some ISO standards.

      There are critics of C++ that say the language is just pieces and parts hacked together. Even if that is true, mathematics takes the undisputed crown of bizarre hacked together symbols.

      The symbols used in mathematics are unintelligible, inconsistent, don't even use a standard language character set and cannot be represented in a programming language.

      These mathematical symbols either need to be modernized to come to a standardization or die.

      What the hell? I can believe how incredibly ignorant is this comment. Do you even work with mathematics? The symbols used in mathematics are jargon to be sure, but every (non-trivial) field of endeavours has its jargon. And that jargon makes mathematics significantly easier to work with day-to-day for its practitioners.

      You make it sound like mathematics deliberately chose symbols and syntax that was difficult to implement in a programming language, as if that's the pinnacle of the written form. Of course, m

      • Re: (Score:2, Interesting)

        by chithanh (1921670)

        What the hell? I can believe how incredibly ignorant is this comment. Do you even work with mathematics? The symbols used in mathematics are jargon to be sure, but every (non-trivial) field of endeavours has its jargon. And that jargon makes mathematics significantly easier to work with day-to-day for its practitioners.

        You make it sound like mathematics deliberately chose symbols and syntax that was difficult to implement in a programming language, as if that's the pinnacle of the written form. Of course, mathematics predates programming languages by centuries if not millenia.

        The problem is that these symbols are no longer suitable for the modern world. They were fine at the time when they were conceived, but technology has moved on and requires something better.

        And the symbol it uses are part of a standard language character set, just not those that has yet been popular in the (relative) young computer world. You're comparing mathematics to a single programming language. You should instead compare mathematics to every programming language combined.

        The criticism was not that the symbols are undisplayable, it is that their use is not consistent and not possible as part of a computer program, aside from very special languages which specifically cater for Math. A few attempts have been made to reconcile these (for example RPN and stack-based languages like Forth) but

        • by Anonymous Coward

          The problem is that these symbols are no longer suitable for the modern world. They were fine at the time when they were conceived, but technology has moved on and requires something better.

          These symbols were difficult when computers were new and slow. Nowadays, there are things like Unicode, LaTeX and MathML which partially solves those problems. You make it sound like we should adapt to computers, that's understandable when computers were expensive, but they're now cheap and we should optimise for humans in my opinion.

          The criticism was not that the symbols are undisplayable, it is that their use is not consistent and not possible as part of a computer program, aside from very special languages which specifically cater for Math. A few attempts have been made to reconcile these (for example RPN and stack-based languages like Forth) but have not seen widespread adoption so far.

          With regards to the GP, I think that the inconsistency is especially bad. For example, whether N is meant to include 0 or not often depends on whether the author thinks that the natural numbers include 0 or not (which are two totally different things). Then many authors use trigonometric functions like operators to avoid writing parentheses, but without formally specifying the binding/precedence level. So when one reads "sin^2 x*y" does that mean "(sin(x)^2)y" or "sin(x*y)^2" or "sin(sin(x))*y" or "sin(sin(x*y))"? The list goes on.

          That's because of the limitation in conveying Mathematics in ASCII as well as either people writing the mathematics being insufficiently clear (which can happen in English or p

          • Just a note—sin^2(x) cannot be sin(sin(x)) because that is a datatype error. The input is an angle, the output is a ratio. They don't have the same domain, and hence the function cannot be iterated. Because of its utility in trig proofs, sin^2(x) was introduced as a form of syntactic sugar, much like Python's slice operators or C's array subscripts. (Although to be fair the formal notion of functions wasn't well-standardized at the time, and it actually was a unary operator when introduced.) It helps
            • by maxwell demon (590494) on Saturday May 04, 2013 @10:45AM (#43629091) Journal

              Just a note—sin^2(x) cannot be sin(sin(x)) because that is a datatype error.

              You just showed that you don't know enough mathematics.

              The input to the sine function is not an angle, it is a real or complex number. If real, this number often (but not always!) describes some angle. If complex, it obviously won't describe an angle.

              The sine function is defined as

              sin x = (exp(i x) - exp(-i x)) / (2i)

              where i is the imaginary number, and exp(x) is defined by the series

              exp x = 1 + x + x^2/2 + ... + x^n/n! + ...

              Note that, since the convergence radius of the exponential series is infinite, and the sine is just a linear combination of exponentials, the sine is defined on all complex numbers. Since it is complex-valued, sin sin x is indeed well defined for all complex numbers x.

              Moreover, if you restrict the sine to real numbers (that is, only accept real numbers), you still have a well defined sin sin x, because the real sine function is also real-valued (more exactly, its values are restricted to the interval [-1,1]).

              Also, the output is in general not a rational number (the only thing you could have meant with "ratio" that makes sense in this context).

              • You've argued effectively that the domains of the input and output of trigonometric functions are unbounded, but not against the interpretation of their meanings. Complex angles occur in total internal reflection, for example.

                Even if sin sin x is well-defined, it doesn't have any natural utility. I'd be really surprised (but interested!) if you could show me an example of it being used in a proof.

                • by Anonymous Coward
                  There are in fact whole books [wiley.com] on the topic. Although that book intro claims not much has been written about it, there is information around about it because of the use of the sine map in dynamical systems and chaos studies (with some "real" world applications as modeling of some weakly driving rotors and phase locked loop systems). Going deeper into the rabbit whole will find things like functional square roots, equivalent to half an iteration, giving things like the rin function where rin(rin(x)) = sin(x
          • by chithanh (1921670)

            So "sin^2 x*y" means "(sin(x*y))^2", it's a pretty strong convention. If you meant "(sin(x)^2)y" (as "(sin(x^2))*y"), you'd write as "y sin x^2". If you meant "sin(sin(x))*y", you'd write as "y sin(sin(x))". If you meant "sin(sin(x*y))", you'd write as that or "sin(sin x*y)". Sure, it's a bit odd for people unfamiliar with mathematics, but those people are never going to do mathematics anyway.

            But could you code this convention into a compiler, e.g. by formally specifying precedence for trigonometric operators? It would have to account for the most common interpretations:

            sin x*y = sin(x*y)
            sin x * sin y = sin(x)*sin(y)
            sin^2 x = sin(x)^2
            sin^(-1) x = arcsin(x)

            Now continue this for log, lim, summation notation, and all the other clever ways mathematicians have devised in order to avoid writing parentheses. It will quickly become clear that this is an arduous, error prone task and the time better b

      • You make it sound like mathematics deliberately chose symbols and syntax that was difficult to implement in a programming language, as if that's the pinnacle of the written form.

        Not deliberately, but a significant part of the mathematical notation actually doesn't make sense from the POV of formal languages - probably because the notion of formal languages didn't exist at the time. :-)

  • by Anonymous Coward

    When Chrome devs sneeze and accidentally create some flimsy new voice API that does things remotely anyway, the web gives them a shoulder rub.

    When Chrome devs give up and fork their browser, that's a big thumbs up.

    When Opera gives up the ghost and chooses Google's engine, it's "good job, Google!"

    But when Mozilla listens to users and shrinks their memory usage to the point where Chrome can't even compete, "who cares"?

    When Mozilla diligently catches up in Javascript performance, even overtaking Google with a

    • by Guspaz (556486)

      When Mozilla proves they've solidified a piece of web tech that many people already rely on, "who cares?"

      Define "many". Before today, as a geek and a software developer, I've never heard of MathML before. Now that I have heard about it, and know what it's for, I find it completely useless to me, and I suspect the vast majority of people. I think that a tiny fraction of a percent of people will find MathML useful.

  • > 'Google developers forked Webkit and decided to remove from Blink all the code (including MathML) on which they don't plan to work in the short term.'"

    Haha! What a bunch of losers. Psssst! What's he talking about?
  • by Chrisq (894406) on Saturday May 04, 2013 @07:46AM (#43628277)
    if you want MathMl enabled in Chrome click the star in Issue 152430 [google.com] to register interest
  • What benefit does this give to me now, at this moment? Probably little if any.

    .
    On the other hand, it would be really nice if the Firefox developers fixed their proxy issues, and fixed the javascript engine choking on sites.

    The problem with the testerone-induced rapid development cycle is that it apparently leads to a lot of bravado (we're better than Chrome") and little ongoing maintenance of browsing issues.

  • FWIW, Chrome's result is identical to my default, pre-Chrome, Android 2.6.3 browser. This would make sense if Google had removed the code from Chrome rather than a half-assed version; this must be the default infinit incompetence look.

    I take that back. Infinite incompetence would crash. Possibly also infecting the Internet.

  • Hey, I like to typeset music, What if I want my browser to parse musicXML? I need a plugin, deah!

There's a whole WORLD in a mud puddle! -- Doug Clifford

Working...