Slashdot Mirror


MS, Mozilla Clashing Over JavaScript Update

jfruhlinger writes "JavaScript has become a crucial part of Websites built on AJAX underpinnings, which makes the upcoming revision to the ECMAScript standard crucial for the future of the Web. But in today's browser environment, no one vendor can impose an update path — which may set things up for a nasty conflict. A fight is being fought on blogs between Mozilla Chief Technology Officer (and creator of JavaScript) Brendan Eich, who wants to the new ECMAScript standard to be a radical upgrade, and Chris Wilson, architect of MS's IE team, who would rather keep JavaScript as is and put new functionality into a brand-new language."

521 comments

  1. Either way... by Anonymous Coward · · Score: 0

    A fight is being fought on blogs between Mozilla Chief Technology Officer (and creator of JavaScript) Brendan Eich, who wants to the new ECMAScript standard to be a radical upgrade, and Chris Wilson, architect of MS's IE team, who would rather keep JavaScript as is and put new functionality into a brand-new language

    Either way, we're gonna need a bigger bug list.

    1. Re:Either way... by WaltBusterkeys · · Score: 3, Interesting

      Maybe this is a naive question, but why isn't a third-party standards organization leading the way on this? I know that W3C didn't do a great job standardizing HTML (as any web developer who has spent hours debugging IE vs Mozilla can attest), but ANY standard is better than no standard here. Where's NIST or ANSI? I hate to even suggest that the US government get involved, but setting some kind of standard could avoid another Blu-Ray vs. HD DVD wasteful standard war that hurts consumers and developers. Everyone would be better off if this conflict could be avoided entirely. What would it take?

    2. Re:Either way... by RightSaidFred99 · · Score: 4, Interesting

      Yeah, design by commitee always works out so well! Seriously, third party standards bodies are only good at post-facto. Don't rely on them to innovate. I say IE and Mozilla battle it out, release the product, and may the best man win. Once a winner is reasonably clear, then the standards bodies can get in and write it in stone.

    3. Re:Either way... by Anonymous Coward · · Score: 0

      Maybe this is a naive question, but why isn't a third-party standards organization leading the way on this? What, like ECMA? What do you think "ES4" in TFA stands for?
    4. Re:Either way... by cromar · · Score: 3, Informative

      ECMA International is a group that writes standards.

    5. Re:Either way... by blhack · · Score: 3, Insightful

      I say IE and Mozilla battle it out, release the product, and may the best man win. Unfortunately, if that happens, the best man won't win. Firefox doesn't have NEARLY the market penetration required to actually stand toe to toe agains IE in something like this. Thats why there are "standards" out there that nobody complies with; because IE doesn't.

      There needs to be a third pary arbitrator here.
      And hopefully that arbitrator tells them all to just STFU up and use python :).
      --
      NewslilySocial News. No lolcats allowed.
    6. Re:Either way... by DragonWriter · · Score: 1

      Maybe this is a naive question, but why isn't a third-party standards organization leading the way on this?


      For the most part, standards organizations don't lead all that much, they, at best, referee, and their decisions are typically preceded by just this kind of jockeying by interested parties.

      Where's NIST or ANSI?


      There is a reason the standardized language is called ECMAScript, and not NISTScript or ANSIScript.
    7. Re:Either way... by sarathmenon · · Score: 2, Informative

      For once, someone at Microsoft gets the deal right. They should leave javascript as-is, and improvise XUL or whatever is the new buzzword. Tacking on updates to existing standards only creates ugly security loopholes, and all sort of weird hacks. Why, in the name of the lord, can't people learn from the mistakes that others have made?

      --
      Microsoft: "You've got questions. We've got dancing paperclips."
    8. Re:Either way... by DanielJosphXhan · · Score: 2, Insightful

      And the languages won't win either. Javascript will stall at its currently supported version as people strive for cross-compatibility.

      --
      [ think ]
    9. Re:Either way... by InlawBiker · · Score: 1

      That's what's already happening. Even if a standard is published it's usually ignored. The problem is that Microsoft now has the huge majority and can do pretty much whatever they want. If my web app breaks when the next IE comes out you better believe the site will be made compatible, whether I like it or not.

      So your plan for winner-take-all is nice in theory, so long as you don't complain when Microsoft wins because they can muscle their way into a de-facto standard.

    10. Re:Either way... by gstoddart · · Score: 1

      Yeah, design by commitee always works out so well! Seriously, third party standards bodies are only good at post-facto. Don't rely on them to innovate. I say IE and Mozilla battle it out, release the product, and may the best man win. Once a winner is reasonably clear, then the standards bodies can get in and write it in stone.

      Oh, fa! I hope not. Microsoft's idea of innovating is to take what someone else has done and make it incompatible, or write their own stuff and ram it down our throats.

      Making stuff work on more than one browser platform can be a pain in the ass enough as it is. For once, I wish they could set out goals in advance. Of course, I'd be naive to believe that would actually ever happen.

      Unfortunately, Microsoft also has the goal of entrenching their stuff as a 'standard' and only people willing to pay them money will be able to play. They have the industry's worst case of NIH that has ever existed. They're sure as hell not going to implement improvements to Javascript that are being pushed by someone from Mozilla. They're certainly not going to choose an implementation that Mozilla can do for free; they're simply incapable of doing *that*.

      If it hadn't been for the fact that HTML was already in use before they came along to the browser market, I'm sure they'd have long since put forth their own version of it.

      Cheers
      --
      Lost at C:>. Found at C.
    11. Re:Either way... by Dogtanian · · Score: 1

      They should leave javascript as-is, and improvise XUL or whatever is the new buzzword. Well, to quote Wikipedia (euh...), XUL is "an XML user interface markup language developed by the Mozilla project for use in its cross-platform applications, such as Firefox. The only complete implementation of XUL is the Gecko [Mozilla] layout engine."

      So I can't see MS having anything to do with it, unless there's some convoluted plotting going on.
      --
      "Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
    12. Re:Either way... by Colin+Smith · · Score: 1

      ITYM rubber stamps them.

      --
      Deleted
    13. Re:Either way... by zappepcs · · Score: 2, Informative

      Are you nucking futs? At what point in the history of MS have they done anything that was relatively useful to the end user if it was not Ultimately useful to MS in isolating end users from choice?

      Not because I just want to bash MS, but they earned this one fair and square.

      I'm not against a company wanting to innovate and improve their product in order to be the best in class, but that is not what MS is famous for. Their innovations have been purchased (nearly a 100 startups left to buy now) and they do not strive to be best in class with any kind of success (can I mention Vista here?). Even when a workable open standard is proffered up, MS has to do their own version in order to isolate end users from choice (can I get a hell yeah for ODF?). We 0nly have to look at the difference between standards based web browsers and IE to see that MS has no intention of doing anything that is actually good for the world unless it benefits MS (can I mention the bill and melinda foundation and OLPC?). MSIE was, and will continue to be a tool for MS to attempt to remain dominant on the desktop. By virtue of business mentality, it must also always be used to isolate the end user from choice. That is simply how big business in the US of A works.

      I believe that it's simple dumb luck that we don't have to buy tires from the manufacturer of the vehicle we own. Sure, there is more to it, but think about how valuable the car analogies really are. Do we really want Nissan or Ford or VW designing the roads? Your driving experience depends on your choice of vehicle, and choice of roads. If we all drive MS cars and truck, using MS tires, on MS designed roads... where will the choice be?

    14. Re:Either way... by n2art2 · · Score: 1

      What would that take????

      Think Communism.

      It works great on paper, but then you add the human element.

      --
      Self proclaimed wannabe geek. You know how it is. Most of us who read this stuff probably fit in that category.
    15. Re:Either way... by VGPowerlord · · Score: 1

      "ECMA International is a group that approves standards, but isn't as widely accepted as ISO."

      Fixed that for you.

      Lately, they've also been known for the large amount of Microsoft standards passing through them, such as C# and OOXML.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    16. Re:Either way... by cromar · · Score: 1

      Heh. Thanks. I was actually having a little trouble wording that...

      I don't know much about ECMA besides that they were responsible for the js standards... Looking at their list of standards, it appears they are responsible for a few more yuckies such as the CLI and the Windows C API. On the other hand, it appears they control the Eiffel standard as well.

      I wonder what their reputation in other industries is like...

    17. Re:Either way... by deathy_epl+ccs · · Score: 1

      And hopefully that arbitrator tells them all to just STFU up and use python :). While I'm not normally a fan of Python, it would still be an improvement over freakin' Javascript.
    18. Re:Either way... by blincoln · · Score: 4, Insightful

      And hopefully that arbitrator tells them all to just STFU up and use python :).

      Yes, a language that parses whitespace like Python does would be great for client-side scripts run from a web browser.

      --
      "...always new atoms but always doing the same dance, remembering what the dance was yesterday." -Richard Feynman
    19. Re:Either way... by Randle_Revar · · Score: 3, Insightful

      Javascript is in no way comparable to XUL. XUL is an XML layout dialect, JS is a programming language.

      Also "Tacking on updates to existing standards only creates ugly security loopholes, and all sort of weird hacks."?
      Yeah, that explains why Python 2.x is so much worse than Python 1.x and Perl 5 is so much worse than 4 and why the new versions of C, C++, C# and Java never caught on... Oh, wait.

    20. Re:Either way... by Bobdoer · · Score: 1

      Whitespace is significant in Javascript too. It just has less uniform rules than Python does.

    21. Re:Either way... by greedyturtle · · Score: 1

      I won't give you a hell yeah for ODF, a better example is I give you Microsoft Java.

    22. Re:Either way... by sarathmenon · · Score: 1

      You can look at the myriad of html formats (3, 4, 4.1, DHTML ...) around to understand why incrementally improved standards is a bad idea. Maybe, the number of versions of MS word formats, and the grand-daddy that is OOXML is a good standard? Oh wait, the best is korn-style shells where each standard has been very accommodative of the previous ones.

      You mentioned a couple of standards that were openly developed, where the controlling parties did not have a nefarious interest in its development. Please see the current context, which is the background of my comment.

      --
      Microsoft: "You've got questions. We've got dancing paperclips."
    23. Re:Either way... by morgan_greywolf · · Score: 3, Funny

      Actually, I wrote a function for an application I'm developing (in Python) that fixes that problem to some degree with XML files. Example:


      <script type="text/python">
                from template import *
                who='Slashdot'
                if not (who == ""):
                        s=Template('Hello, $n!').substitute(n=who)
                else:
                        print "I'm confused!"
                print s
      </script>

      will cause problems, since XML parsers tend to include all the whitespace and newlines and so forth. My function simply converts the tabs to spaces and then unindents everything deleting the number of leading spaces of the first line, which will never be indented in a valid Python script, from all the lines of the script.

      Probably not something that hasn't been done before, but I did come up with it all by myself. :)

    24. Re:Either way... by VGPowerlord · · Score: 1

      Oh, don't forget that they approved OOXML as a standard and was the body that tried to fast track it with ISO.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    25. Re:Either way... by Kalriath · · Score: 1

      Actually, you could happily write your entire script file on a single line, and you'd only need to put spaces between keywords. I think GP was referring to line breaks, which languages like Python and BASIC need, but languages like C, Pascal, and Javascript do not.

      --
      For a site about things like basic rights, Slashdot users sure do like to censor "dissent".
    26. Re:Either way... by W2k · · Score: 2, Insightful

      Also "Tacking on updates to existing standards only creates ugly security loopholes, and all sort of weird hacks."? Yeah, that explains why Python 2.x is so much worse than Python 1.x and Perl 5 is so much worse than 4 and why the new versions of C, C++, C# and Java never caught on... Oh, wait.

      Your examples actually strengthen the point you are trying to argue against. C++ is indeed lots of new stuff tacked on to an existing language (C), with a result that is far from elegant and full of gotchas, as any newbie to C++ will know. C# and Java are both completely new languages, they can be called successors to C/C++ but neither even tries to be backwards-compatible and neither builds on the C++ standard. I don't know about Python and Perl .. but if you want another example of a language where tons of insecure and hacky cruft has accumulated over the versions, try PHP. Now there's a language that needs a complete restart if I ever saw one!

      --
      Quality, performance, value; you get only two, and you don't always get to pick.
    27. Re:Either way... by 644bd346996 · · Score: 1

      Hmmm... I always thought C++ was messier than Java and C# because it completely different design goals. ie. Java and C# are simple, platform independent OO languages, whereas C++ tries very hard to avoid abstracting away anything useful for writing high-performance code (real pointers, for example), while still giving you the full power of an extensible OO language (instead of the crippled feature set of Java). What you perceive as "cruft" in C++ is actually what allows it to still be usable for writing things like operating systems.

      Creating a programming language that allows you to use abstract concepts and tinker with what's under the hood is hard. Making it pretty is probably impossible.

    28. Re:Either way... by XdevXnull · · Score: 1

      If it hadn't been for the fact that HTML was already in use before they came along to the browser market, I'm sure they'd have long since put forth their own version of it. Um... *cough cough* You've never written a web page have you?
      --
      "I'm a Laver, not a Phyto[plankton]"
    29. Re:Either way... by Bobdoer · · Score: 1

      Okay, whitespace can be significant in JavaScript. Look at automatic semicolon insertion.

    30. Re:Either way... by W2k · · Score: 1

      You are incorrect. I do not consider stuff like pointers "cruft" in a programming language; C, for example, while old, is quite an elegant and cruft-free language. C++, however, is not, unless you trim off all the bits that characterize it as C++ rather than C with a few pieces of syntactic sugar added. The stuff in C++ that makes it messy is that they kept mostly backwards-compatible with C, to make it easy to port programs from C to C++, while introducing a poorly structured and horribly bloated STL. Still, there are enough differences between C and C++ to make porting a pain in the ass anyway, so it can be argued that it would have been better to drop the legacy stuff from the beginning.

      Second, you may not have noticed, but none of the current big operating systems are actually written in C++. The Windows, Linux, BSD and OSX kernels are all written in straight C. You can use C++ in the kernel, but there are lots of drawbacks, google "kernel c++" for details. Now, you said "operating systems", but the kernel is the only part that's relevant here; userspace tools can be written in any language so long as there's a compiler for it.

      --
      Quality, performance, value; you get only two, and you don't always get to pick.
    31. Re:Either way... by caspper69 · · Score: 1

      Second, you may not have noticed, but none of the current big operating systems are actually written in C++. The Windows, Linux, BSD and OSX kernels are all written in straight C. You can use C++ in the kernel, but there are lots of drawbacks, google "kernel c++" for details. Now, you said "operating systems", but the kernel is the only part that's relevant here; userspace tools can be written in any language so long as there's a compiler for it.

      The main reason that the kernels themselves are written in C is twofold. Firstly, C++ has a lot of unusual side effects that are highly undesirable in a kernel because you need to be able to understand 100% of what is happening at any given time. Secondly, C++ requires significantly more runtime support than C. Kernels in C++ are not unheard of, it's just that most people don't go through the trouble, since as you've pointed out, C is elegant and mostly cruft-free. The best practice for kernels, even now, is to write the core in C, and provide C++ bindings and interfaces for application developers.

    32. Re:Either way... by Maxmin · · Score: 1

      Whut we lookin' at it? There an editor that inserts semicolons automatically?

      One good reason to use semicolons in Javascript: your code will more likely be parseable by documentation generators and other Javascript-consuming utilities that don't fully implement Javascript's grammar. Most of them don't know about JS's ;? nature.

      --
      O lord, bless this thy holy hand grenade, that with it thou mayest blow thine enemies to tiny bits, in thy mercy.
    33. Re:Either way... by gstoddart · · Score: 1

      Um... *cough cough* You've never written a web page have you?

      Of course I have. Quite a few.

      However, I'm not aware of any actual HTML tags that Microsoft has introduced on their own or blatantly not suported.

      Sure, they don't adhere to anything resembling CSS, their Javascript is broken, and they don't always format the same .... but, as far as the core HTML tag set goes, to the best of my knowledge, they've not really monkeyed about with it.

      The other things in the formatting landscape, yes, their support is usually shitty. But, I stand behind the fact that core HTML is pretty much unchanged. (Though, I'd love a counter example, maybe I've just never bumped into one -- I usually test my web pages on at least two browsers.)

      Cheers
      --
      Lost at C:>. Found at C.
    34. Re:Either way... by Eskarel · · Score: 3, Informative
      Let me preface this by saying I use firefox as my primary browser at home, and my primary environment for web design at work, the speed of rendering plus the time things like firebug save me in debugging the oddities of javascript are just amazing and blow anything IE 6 has to offer out of the water(I've used IE 7 a bit, but we're not ready to roll that out corporate wide yet so while I check things with it I write for IE6 and Firefox).

      There are some issues I have with the fact that there's no simple way for users to set trusted zone and Firefox security tends to throw the baby out with the bath water as far as security goes(no modal windows, no clipboard modification etc, I know why this is the case, but sometimes folks like me have legitimate reasons for these sorts of things). I'm also a bit annoyed with the whole "we'll fix it in 3.0" thing that's going on right now, but that's another story.

      This all sounds like a wonderful story for the Mozilla corp, but it's not. While the bundling didn't help, Netscape got beaten by IE because IE was better. It's not now, but that's mostly because Microsoft have been slack bastards and sat on it for years.

      I remember the browser wars well. I wasn't on the web for mosaic, but I was on for the browser wars. I know that having bundled IE got a lot of people on the net who wouldn't have otherwise gotten there, and I know that Netscape got bundled by ISPs for a while too. Netscape 4 was a great browser, it was better than IE 4, when I had to choose between those two, I used Netscape. However, Netscape 4 wasn't better than IE 5, and by extension it wasn't better than IE 6.

      After Netscape 4 there was pretty much nothing for a number of years. Netscape 6 was an abomination, an unfinished rendering agent(gecko is great now but it wasn't done then). Opera was and is a great browser, probably the greatest browser of that time(might still be haven't played with it in a while) most of the innovations of the new era of browsers came from Opera, but it never caught on. Partly that was because in order to be faster it gave up on all the terrible web kludges and large chucks of the web in those days was terrible kludges. It could also be its linux reliance on QT which was bad back then, or the cost, who knows. You want to find a case for why a good browser failed, look at Opera, but back then Netscape wasn't in it and Mozilla wasn't done.

      As for the reason why there are standards out there that nobody complies with, it's because the standards suck.

    35. Re:Either way... by Anonymous Coward · · Score: 0

      While I don't agree that python would be a good idea, counting it out because of its whitespace would be stupid.
      You could include scripts, just like like you include javascript and css outside of the html.

    36. Re:Either way... by fmarkham · · Score: 2, Informative

      Two counter examples come to mind:
      The abominable <marquee> is a microsoft invention, while <abbr> is still not supported by IE7.

      I'm sure there are plenty more out there.

    37. Re:Either way... by houseofzeus · · Score: 1

      You must have missed the browser wars then.

      anyone?

    38. Re:Either way... by Z34107 · · Score: 1

      Blu-Ray vs. HD DVD wasteful standard war that hurts consumers and developers

      Nope. All I see is a bunch of people scurrying like Frenchmen trying to make their platform cheaper and better than the other guy, and to do it faster. This kind of corporate freakout is exactly what an economy needs every once and a while.

      --
      DATABASE WOW WOW
    39. Re:Either way... by Bobdoer · · Score: 1

      Even if they did, the rules are far more complicated than ;?\n Read the ECMA script spec sometime. The portion on this issue is horrible.

    40. Re:Either way... by ORBAT · · Score: 1

      Yes, let's get the US government in on this, they'll surely fix it.

    41. Re:Either way... by Cally · · Score: 1

      Quite right, Perlscript is the only way forward.

      --
      "None are more hopelessly enslaved than those who falsely believe they are free." -- Goethe
    42. Re:Either way... by ip_vjl · · Score: 2, Insightful

      While I don't agree that python would be a good idea, counting it out because of its whitespace would be stupid.
      You could include scripts, just like like you include javascript and css outside of the html.


      If you wanted to include an external *.py script, then yes it would be easy to control the whitespace and indenting as you would have the entire file created ahead of time.

      But a lot of times your client scripting code is generated dynamically as a result of code running on the server (through Java, PHP, ASP, etc.). Often, these languages (especially tag-based languages like PHP or JSP) insert whitespace between different tags and it gets difficult to control their output precisely without doing works around the language. If that happens, your server script could put more or less whitespace than you intend into the dynamically generated *.py that would then execute incorrectly in the browser.

      This gets even worse if your server code is not all generated in one block, but is assembled by a number of small blocks (like Struts/Tiles) as the small template that you are modifying may be included by another block (which is included by another) and if the indenting changes at the top level, you'll need to know and go find it in all the child levels to modify it.

      Ever look at the source HTML to a lot of dynamically generated sites and wonder why there are odd patches of whitespace? Since it isn't (for the most part) significant in HTML, existing web server-scripting technologies have been built without necessarily caring about what it outputs. To suddenly need to care would mean re-working a whole lot of other tech just to make it work.

      I'm not knocking Python or even its whitespace significance, but it definitely would introduce a huge problem for browser read scripts that weren't statically generated.

    43. Re:Either way... by Z00L00K · · Score: 1
      An evolution of JavaScript may be the best way to go. We already have a secondary script language called VBScript, which is a real mess in itself and is best avoided by portable web sites.

      The only practical outcome of this clash is that it wouldn't benefit web developers at all and all development will be stuck at the current level if portability is to be maintained.

      An evolution of the language would help, but it should be backwards compatible.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    44. Re:Either way... by XdevXnull · · Score: 1

      It's been a long time since I was doing hardcore HTML myself. A sibling post mentions two specific tags. And while I would probably concede that the core HTML tagset is mostly supported, they added in all kinds of quirky layout weirdness, as well as kludgy hacks to compensate for sloppy HTML coders. End result is that a lot of standard and valid HTML pages would either be totally broken or just look weird in IE, and a lot of pages that look perfectly fine in IE look like a table barfed up its lunch in Firefox and it's cousins, or Opera. This is generally a lot better than it used to me, and a lot of it was because of weirdness in their CSS and JavaScript implementations, but I used to see it often enough before CSS was in vogue.

      --
      "I'm a Laver, not a Phyto[plankton]"
    45. Re:Either way... by Schraegstrichpunkt · · Score: 1

      Yes, a language that parses whitespace like Python does would be great for client-side scripts run from a web browser.

      That sounds like sarcasm, but I don't understand why you think it wouldn't work just fine.

    46. Re:Either way... by Schraegstrichpunkt · · Score: 1

      K&R C didn't have function prototypes or a lot of other important things. ISO C99 was a massive improvement in standardization over ISO C90.

      C++ and C# are not incremental updates of C, they're different languages.

    47. Re:Either way... by Maxmin · · Score: 2, Informative

      Read the ECMA script spec sometime. The portion on this issue is horrible.

      No doubt. I printed a copy so I could read it on the train... schlepped it to work/to home for two weeks... what a waste.

      Then I found something far better... a CPAN project that implements a Javascript parser, using a YACC-like, Javascript 1.5 compliant syntax definition. Sweeet!!

      --
      O lord, bless this thy holy hand grenade, that with it thou mayest blow thine enemies to tiny bits, in thy mercy.
    48. Re:Either way... by Bobdoer · · Score: 1

      Really? Can I get a link? That would have been godsend last summer.

    49. Re:Either way... by Maxmin · · Score: 1

      Sure: http://www.corion.net/perl-dev/Javascript-PurePerl-0.09.tar.gz

      This did not come from cpan.org, I misremembered, though the authors ought to post it there. Came from here: http://www.corion.net/perl-dev/.

      That said, depending on what you're doing w/JS, CPAN's worth a look. There are a ton of new JS projects up there in the last six months, including what looks like a javascript interpreter! (Take that, Rhino!) Suggest searching CPAN, there are a lot of exciting new JS projects.

      cheers...

      --
      O lord, bless this thy holy hand grenade, that with it thou mayest blow thine enemies to tiny bits, in thy mercy.
  2. It's a Shame to See Them Fight by Anonymous Coward · · Score: 1, Informative

    But they got along so nicely the last time Microsoft invited the Mozilla Developers over for a trip to the factory!

    Oh, I hope this doesn't sour their play time together!

  3. What's this new language by Anonymous Coward · · Score: 0, Funny

    Let me guess, the new language the MS goon wants is named something like:

    MSScript or IEScript or All Your Browsers are belong to Us Script

    And I'd bet he wants to base it on the CLR too.

  4. Why not both? by magisterx · · Score: 1, Insightful

    It seems they could both radically improve javascript and add in support for additional scripting languages. It would come at the price of increasing the size of the browsers, but that seems a small price to pay for the increased flexibility for developers.

    1. Re:Why not both? by Seumas · · Score: 2, Insightful

      By "flexibility", you mean "use javascript or MSVbActiveFlashScript"?

    2. Re:Why not both? by snl2587 · · Score: 1

      My thoughts exactly. Unless M$ goes patent crazy and disallows anyone from adding compatibility for their new language, the browsers could just support two new languages. And to be fair, neither should call it "JavaScript".
      Of course most developers would only use one, but that's fine.

    3. Re:Why not both? by hey · · Score: 1

      They are only talking about an upgrade to javaScript ... to EC4.
      It only makes sense for all browsers to support it.

    4. Re:Why not both? by ThirdPrize · · Score: 1

      I would be curious to see how then radically improved JavaScript while at the same time kept it backward compatible with the old version. If it is that different then it might as well be another language. Dual code paths for browsers with the new version installed and those without.

      M$ probably want something a bit like C# which they have some control over while the others want to keep the old name but put it on something a bit less clunky. Perhaps we could have the VBScript v Javascript battle all over again.

      --
      I have excellent Karma and I am not afraid to Troll it.
    5. Re:Why not both? by cromar · · Score: 1

      It would be interesting to have more possibilities for scripting languages... I imagine developers could do some neat things having client-interpreted Lisp or Haskell... PHP and/or perl/ruby could be popular choices as well. What do you all think?

      On the other hand, I would really hate to start seeing VBScript used in webpages.

    6. Re:Why not both? by Anonymous Coward · · Score: 0

      Because now you're even more bogged down implementing functional requirements... content... for even more differing technologies.
      I am using GWT to remain productive in the scripting worlds. Really like it, give those guys a break so they don't have to code Javascript crazyness like tax software makers when new tax laws come out.

      But then... what ever happened to Java applets? Perhaps it's time to break those out again because they work regardless the platform.

    7. Re:Why not both? by apt142 · · Score: 3, Insightful

      Screw two languages. I'd love to have one language that actually works on all the browsers. Javascript as it's implemented by Microsoft is worlds different from any implementation outside of it. It's only by hacking together the common bits between the implementations that web pages are actually capable of working on multiple browsers.

    8. Re:Why not both? by SCHecklerX · · Score: 1

      yeah, why not a plugin architecture with the equivalent of a shebang line? I'd love to use perl for my client side browser stuff (i'm actually serious about that, realizing full well that it wouldn't be widely used, but I can dream :)

    9. Re:Why not both? by msuarezalvarez · · Score: 4, Insightful

      So you think that while right now we have partial and buggy implementations of one scripting language in most browsers, when we have two new additional scripting languages we'll have two well-supported, to-the-spec implementations of the two new languages in most browsers?

    10. Re:Why not both? by Anonymous Coward · · Score: 0

      Brendan Eich's claim is that non-OS-bundled browsers can't afford the increased browser size resulting from two VM engines. Particularly, he says, mobile devices cannot afford this increase in browser size.

    11. Re:Why not both? by msuarezalvarez · · Score: 1

      You'd hate to see VBScript but you are OK with PHP... Funny that.

    12. Re:Why not both? by mad.frog · · Score: 4, Informative

      The overview of the current ES4 proposal is here: http://www.ecmascript.org/es4/spec/overview.pdf

      Go check it out and decide for yourself.

    13. Re:Why not both? by cromar · · Score: 3, Insightful

      Purely for syntactical reasons. At the risk of ticking somebody off, I really dislike VB's syntax.

    14. Re:Why not both? by ultranova · · Score: 0, Troll

      It seems they could both radically improve javascript and add in support for additional scripting languages. It would come at the price of increasing the size of the browsers, but that seems a small price to pay for the increased flexibility for developers.

      Oh good. I get to buy even more RAM so that the developers, who have trouble using even current features correctly, get even more ways to screw things up. On top of that I Firefox gets more vulnerability vectors and potential memory leak / CPU hog points.

      Sorry, but I hate all those sites which just have to use Javascript to open a new browser window when I click on a link, or just plain waste CPU cycles which Firefox already consumes too much of on its own on some inane counter. Javascript has caused enough trouble, please don't add any additional ways of screwing things over. Developers may love flexibility, but I, the user, love fast & lean surfing experience. Not that I'd get that in Firefox as is, but having several scripting systems isn't going to help any.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    15. Re:Why not both? by sigmabody · · Score: 1

      Because it's a difference of opinion.

      One position is that JavaScript should be kept simple, and that extending it so substantially has a lot of downsides. Some examples: harder to maintain backwards compatibility for browser vendors, harder to write simple code, resulting language would be "messy" because of BC requirements, and some major vendors may not support it due to overlapping functionality with their solutions (eg: C#).

      The other position is that having browser vendors ship with multiple VM's to process different scripting languages, which would probably need to work together (memory model, resource sharing, etc) would be prohibitively difficult, and it would be better to have one standard language with both the current JavaScript functionality, and whatever new functionality vendors want added.

      There really isn't a "right" answer, just conflicting opinions (and motivations) on how to best evolve the language/platform.

    16. Re:Why not both? by sm62704 · · Score: 1

      It seems they could both radically improve javascript and add in support for additional scripting languages. It would come at the price of increasing the size of the browsers, but that seems a small price to pay for the increased flexibility for developers.

      Yeah, that sounds fair. Penalize ME, the web surfer, by making my browser bigger and slower so YOU don't have to work so hard.

      Yep, you get the benefits, I get to pay. Nice. You know, there's damned little you can't do now on a website with today's available tools. I don't WANT a more bloated browser and I don't WANT any more whiz-bang features. To quote #2 from The Prisoner: "Information. We want information. And by hook or by crook, we'll get it".

      We're here for the content. In case you haven't noticed, most of any website's useful parts are plain old HTML (often with embedded audio/video). The flash and javascript are almost always used for nothing but advertising. Screw that!

      -mcgrew

      --
      mcgrew's razor: Never attribute to stupidity that which can be explained by greedy self-interest
    17. Re:Why not both? by Bucc5062 · · Score: 1

      I really dislike French, for syntactical reasons only....see that makes just about as much sense. I don't speak German thus I am not fond of its structure, syntax, and spelling. In fact, I don't talk in German, yet does that make it a bad language?

      No!

      You're correct, you ticked me off because once again this ugly perspective of "my language is better then yours" comes oozing from the putrid depths where I wish it would stay.

      Visual Basic serves a good purpose in development
      Python I assume does as well.

      Along with Pearl, C, Java, Logo, COBOL, and all the others.

      I started in RatFOR/C, worked in PASCAL, COBOL, FORTRAN, RPG, and now VB.net, and Java. Each took time to learn, each did it's job so I could do mine. I have a preference, but at least I don't hiss and spat like a kitty when someone talks about a language other then a favorite.

      Es ist nicht die Sprache, es ist die Person mit ihr dieser Angelegenheiten.

      or to put it another way,

      Augmentez votre esprit et vivez.

      --
      Life is a great ride, the vehicle doesn't matter
    18. Re:Why not both? by Hatta · · Score: 1

      I really dislike French, for syntactical reasons only....see that makes just about as much sense.

      Yes, that makes perfect sense. What's your point?

      --
      Give me Classic Slashdot or give me death!
    19. Re:Why not both? by Hatta · · Score: 1

      Actually, how about neither? We need to go back to server side scripting. Client side scripting is dangerous and down right rude. You want to run code? Run it on YOUR computer, not mine.

      --
      Give me Classic Slashdot or give me death!
    20. Re:Why not both? by Anonymous Coward · · Score: 0

      Python not only does as well, it does *better*.

    21. Re:Why not both? by anomalous+cohort · · Score: 1

      Actually, how about neither?

      You have proposed that the web browser eliminates the running of any script or program client side. Barring obnoxious advertising, the reason why java script (or, more precisely, AJAX) is compelling is that the screen repaint from a traditional HTTP GET or POST reloads the entire screen. This "flash" is disorienting to the end user and can break up their natural flow.

      I have recently blogged on this subject in my Top OSS for Coders article.

    22. Re:Why not both? by MrMunkey · · Score: 2, Interesting

      Mod parent up. Anyone who posts anything else should read this first. At first I was a little learly of ES4 since I'm so used to ES3. After reading the overview, it's not that bad, and I don't understand what the big fuss is.

    23. Re:Why not both? by pdbaby · · Score: 2, Insightful

      Or they could create a very basic, low level bytecode interface to a browser and the DOM and then have any scripting language JIT compiled to that low level representation... at the script-standard bytecode-native compilation stage you can use program transformations to move towards your browser's native structure

      Go one step further and provide some helpful jit compilation operations and somebody could just say <script language="{http://www.me.com}myscript}"< and the browser could download a jit compiler. Hey presto, browser-independent scripting.

      I leave the implementation as an exercise to the reader

      --
      Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
    24. Re:Why not both? by dvice_null · · Score: 1

      A good solution would be a public domain cross platform library that implements the language which we want to use. Then any browser could easily start using that implementation and assuming the implementation is updated frequently enough, every browser would have identical implementation.

      Of course there would be security issues, as every browser would be vulnerable if security hole is found from the code. But on the other hand, should it be public domain code, it would get a lot of peer reviewing.

    25. Re:Why not both? by rrohbeck · · Score: 1

      >At the risk of ticking somebody off, I really dislike VB's syntax.
      Amen! I want a Perl interpreter built-in.

    26. Re:Why not both? by Anonymous Coward · · Score: 0, Troll

      You're talking about the DOM, not Javascript/JScript. Also, learn the difference between it's and its, fuckwit.

    27. Re:Why not both? by FrostedWheat · · Score: 1

      On Error Goto Hell

      Any language where that is valid can't be all bad! Right?

    28. Re:Why not both? by Hatta · · Score: 1

      So we should fix GET and POST so that they can reload only a subset of a page. I don't see why client side scripting is necessary for this.

      --
      Give me Classic Slashdot or give me death!
    29. Re:Why not both? by CastrTroy · · Score: 1

      Kind of like .Net, only for client side scripting? With .Net, you can program in C#, VB.Net, C++, and probably a couple other languages I'm forgetting. Since .Net is supposed to be an open standard, why not just add a couple classes that can be used to control the browser, and you are set. I'm just kind of playing devils advocate here, because I know that .Net isn't really that open (ie. winforms) but it seems like the implementation of .Net is exactly what the browser scripting world is looking for. One bytecode, multiple languages. It sure would be nice if web developers (like myself) didn't have to constantly switch languages multiple times throughout the day. It would also be nice to have the ability to compile the code, even if it's only to bytecode.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    30. Re:Why not both? by kabz · · Score: 1

      Yep, reading it now. Looks totally awesome.

      As Brendan Eich says, you don't need a 5MB CLR implementation to do cool stuff.

      --
      -- "It's not stalking if you're married!" My Wife.
    31. Re:Why not both? by anomalous+cohort · · Score: 1

      So we should fix GET and POST so that they can reload only a subset of a page.

      Not to split hairs but, technically speaking, the major browser implementations of GET and POST are not broken. There is nothing in the spec about overlaying the response from either into any arbitrary part of a DOM tree specified by an XPATH or XQUERY expression.

      I think that it would be easier from a developer perspective here in 2007 to just code some java script than it would be to change something as fundamental as RFC 2616 and to rewrite every web browser in existence to accommodate that.

    32. Re:Why not both? by totally+bogus+dude · · Score: 1

      "It's" is a valid contraction of "it is", which is the way it was used both times in that post. The first one (Javascript as it's implemented by Microsoft) seems a bit clumsy though.

    33. Re:Why not both? by mvdwege · · Score: 1

      What you propose has already been implemented: the Common DOM API for Java applets.

      Mart
      --
      "I know I will be modded down for this": where's the option '-1, Asking for it'?
    34. Re:Why not both? by pdbaby · · Score: 1

      Yes, similar to the idea of .net, but to sidestep patent reasons, not .net. And you wouldn't want the vast majority of .net libraries, just a simplified DOM (such as the dom api in java, perhaps) and browser interaction api. You could, of course, import libraries by linking to them, and your browser could cache native executable versions of them.

      Why, as well compiling, you could digitally sign your script. Then put a tag into your webpage that only allows scripts signed by you to be executed (reducing XSS attack vectors)

      --
      Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
    35. Re:Why not both? by Psykosys · · Score: 1

      Ecma sounds like something that oozes from a maggot-ridden wound. But the scripting language looks tight.

  5. If you're in there futzing with the code why not.. by Chabil+Ha' · · Score: 1

    agree on using and implementing the same HTML and CSS standards. What? Never in a million years? OK, there's your answer for fixing/replacing JavaScript.

    --
    We're all hypocrites. We all have hidden parts, it's the contrast between them that make us more a hypocrite than others
  6. Re:Flash-bashing equivalent by snoyberg · · Score: 1

    I know you're joking around, but if you really think Javascript is the problem, then just disable it. Much more effective than a popup blocker.

    --
    Thank God for evolution.
  7. About Silverlight? by Kelson · · Score: 5, Insightful

    Opera's Haarvard suggests that it's about Silverlight, and Microsoft trying to close the web. Mozilla, Opera and others are pushing to extend open web technologies, but Microsoft is saying, wait, the web doesn't need to be extended at all! Well, except with Silverlight and WPF...

    1. Re:About Silverlight? by EvilRyry · · Score: 1

      That's exactly what I was thinking, if I had mod points I'd mod you up. By keeping JavaScript back, they're also pushing Silverlight forward.

    2. Re:About Silverlight? by ByOhTek · · Score: 1

      sounds about right, my thought when I read this was:

      Microsoft: "hmm, we failed at 'Extinguish' with HTML and JavaScript... We need a new weapon."

      --
      Self proclaimed typo king, and inventor of the bear destroying coffee table (patent not pending).
    3. Re:About Silverlight? by LWATCDR · · Score: 2, Interesting

      I would bet big money on that.
      I would love to see a good javascript replacement. I don't like javascript and find it kind of nasty to write in. I just don't want it to be under the control of Microsoft, Apple, or Adobe.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    4. Re:About Silverlight? by plague3106 · · Score: 1

      Um, no. Silverlight is an add-in, just like flash. JS really doesn't enter into it much.

      Personally I think they should move to something new, for the sole reason to make a strongly typed scripting language. No more of that crap where you misspell a property and boom, you've added a new one by mistake.

    5. Re:About Silverlight? by Spiked_Three · · Score: 1, Insightful

      "Opera's Haarvard suggests that it's about Silverlight [opera.com], and Microsoft trying to close the web. Mozilla, Opera and others are pushing to extend open web technologies, but Microsoft is saying, wait, the web doesn't need to be extended at all! Well, except with Silverlight and WPF..."

      Insightful? Come on, that's rubbish. It is a simple minded microsoft bash with no basis in fact or reasoning, and yet it gets moderated insightful.

      Silverlight is not about competing with Javascript at all. It's about bringing robustness to web apps. It's about being slightly compatible with desktop apps in code. Those are things that current web technologies, even with AJAX, can not do. Silverlight is about competing with adobe flash, which by the way is way ahead of microsoft at the moment for the robust web app space, so why did you choose to bash Microsoft and not adobe? Never mind, we know the answer.

      Mozilla, opera and other pushing to extend open web technologies? Please .... how does a fight between what version 2 of something is named have anything to do with extending open technologies? You are throwing around buzzwords to make yourself sound smarter (and some moderators fall right for it). Microsoft is saying we have a standard, we have products that are written to that standard, and it will be expensive to supercede that standard with a replacement. They have no objections to something new, just dont break the old.

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    6. Re:About Silverlight? by cromar · · Score: 1

      I would like to see a replacement as well. The obvious choices would be something like PHP or Python, maybe even Ruby. On the other hand, a functional programming language could be really interesting...

    7. Re:About Silverlight? by ednopantz · · Score: 1

      I think it is both: Obviously if Javascript becomes less of a horror show to work with, Silverlight becomes less necessary.

      Even if it helps MS, I want Javascript to die, die, die. Now if you will excuse me, I have to go back to writing my 900-line "add a week to a given date" function in Javascript.

    8. Re:About Silverlight? by Anonymous Coward · · Score: 0

      It's obvious that this is exactly what it's about; Microsoft are trying to destroy Tamarin and promote their own proprietary crap. If they displace javascript, they deal Adobe a blow and put themselves in a position of power over web technology. This cannot be allowed to happen, we've already seen IE stagnate once MS gained the upper hand.

      On a related note, I don't understand why Microsoft are being still being allowed to participate in serious standards committees. If they can't have their own way they act like a spoiled child and attempt to disrupt the process. It's utterly pathetic.

    9. Re:About Silverlight? by Kelson · · Score: 2, Insightful

      You are throwing around buzzwords to make yourself sound smarter (and some moderators fall right for it).

      By "you," are you referring to me, the person who summarized something that I thought was an interesting take on the issue, or to Haarvard, the person who actually made the assertion and discussed it in detail?

    10. Re:About Silverlight? by Wylfing · · Score: 5, Insightful

      Microsoft is saying, wait, the web doesn't need to be extended at all! Well, except with Silverlight and WPF

      Those are actually Brendan Eich's words. The extended commentary from which that comes is over here.

      MS do indeed want to close the internet, and the name of the game is "patent encumberance." It's going to be too hard to lock up JavaScript, so they don't want to play with that anymore. They need to have everyone investing in a new MS-proprietary, patent-encumbered language.

      --
      Our intelligent designer has never created an animal that we couldn't improve by strapping a bomb to it.
    11. Re:About Silverlight? by Wylfing · · Score: 4, Informative

      And you are precisely echoing all of the lies that Brendan discredited in his post. There is absolutely nothing about ES4 that will break ES3. Nothing. Yet you (probably quite knowingly) propagate the falsehood that it will.

      --
      Our intelligent designer has never created an animal that we couldn't improve by strapping a bomb to it.
    12. Re:About Silverlight? by Anonymous Coward · · Score: 0

      Last year, I visited Steve Ballmer at Microsoft. Before Linux showed up, it was a happy place. They had flowery meadows, and rainbow skies, and rivers made of chocolate where the children danced and laughed and played with gumdrop smiles.

      Ok, in all seriousness, Silverlight is only about two things:

      1) Killing Flash (and Flash's "crossplatformyness"
      2) Killing Java or at least the current push Sun is putting into making Java not suck in a web browser.

      That's it.

    13. Re:About Silverlight? by LWATCDR · · Score: 1

      PHP isn't a lot better than javascript. I would rather see python or ruby but that is just me. Maybe it is because I have used PHP, Perl, and Javascript for years that I don't like them that much. It might just be the old Grass is greener thing.
      I wouldn't even mind some kind of VM/JIT compiler for speed. I just want it to be an open standard and free of patents. If ANY one company controls it then you will be giving them power to control the Web. How about Squeak for a language?

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    14. Re:About Silverlight? by rucs_hack · · Score: 0, Offtopic

      I shouldn't take it personally. I got modded troll last week for not actually foaming at the mouth about microsoft in a post, I beleive it was about Office not being that bad, not sure, but the gist was that I don't actually mind some of their products I think. you can't win. You can take heart that he almost certainly wrote that post on a windows machine, I am.

      I love the fact that so many people who rant about microsoft, or take umbrage at something microsofty are almost always committed windows users who wouldn't know their way round a Bash shell if their life depended on it.

      Some of us grown up actually use more than one OS and not be juvenile about it, Currently I use three on a reguler basis. Life/work without my linux cluster would be hard, but so would life without a windows machine (Vista, that's a sack of crap, no matter who wrote it) in the house. God help me, I like windows.

      I don't like all their technology takeover things, but I don't use a lot of it. Since I require cross platform functionality with everything I do I have avoided microsoft coding tools and languages, Their mindset as far as developers goes doesn't suit me. I also think Kdevelop sucks and don't use that either. It's not always the vendor I care about, its the product.

    15. Re:About Silverlight? by Anonymous Coward · · Score: 0

      Um, JavaScript is the coding language for silverlight isn't it?

    16. Re:About Silverlight? by badriram · · Score: 0, Flamebait

      No Microsoft is not pushing Sliverlight and WPF here. OR saying scripting does not need to be extended. They are saying there needs something better than javascript and maybe push DLR, IronRuby, IronPhython, and any other languages you can bind to something like DLR.

      If brenden is saying MS does not want anything new, he is just being a liar. I have read all their blog posts, and you might want to as well.

      Frankly anyone that thinks the present javascript is worthwhile keeping just has not programmed enough in it. It is not the language itself, but the differing implementations, APIs and features suck. So what we have here is that ECMAScript/JS is a waste of time improving without causing too much trouble for developers.

      The best bet is to move to a language neutral dynamic runtime. It is does not have to be DLR, or CLR or JVM. But we need a better runtime, and API. And the sooner i can forget about javascript and be able to code in a better framework the happier my job will be.

    17. Re:About Silverlight? by plague3106 · · Score: 1

      I'm not sure about that either; it depends on what its replaced with. Silverlight though allows you to embed a movie player and buttons.. some common controls in MS' WPF. I think it may (or might) even allow access to your 3d card to render 3d scenes. I don't think a JS replacement would be quite as 'heavy.' Especially when silverlight is a scaled down version of the .Net runtime.

      I do feel your pain.. have fun writing your function. :-)

    18. Re:About Silverlight? by Anonymous Coward · · Score: 0

      bang on

      this is exactly the MS strategy whether Chris Wilson is aware of it or not (generally these concepts are sold down from strategic management)

    19. Re:About Silverlight? by Anonymous Coward · · Score: 0

      So, how long have you worked for MS?

    20. Re:About Silverlight? by Aewyn · · Score: 5, Funny

      // TODO: Add 898 lines
      function addOneWeek(startDate) {
          var oneWeekInMilliseconds = 1000*60*60*24*7;
          return new Date(startDate.getTime() + oneWeekInMilliseconds);
      }

    21. Re:About Silverlight? by DragonWriter · · Score: 4, Insightful

      Silverlight is about competing with adobe flash, which by the way is way ahead of microsoft at the moment for the robust web app space, so why did you choose to bash Microsoft and not adobe?


      Because the story being discussed here isn't about Adobe lobbying a standards body in an effort to hold back adding new functionality to an open standard that could provide an alternative to closed add-on technologies like Silverlight and Flash.

      If it was, people would be bashing them for trying to push the dominance of their proprietary solution by holding back standard, non-proprietary technology in the exact same way that Microsoft is being criticized here.

      Microsoft wasn't criticized for having Silverlight, they were criticized for the manner in which they were perceived to be promoting Silverlight.

      Mozilla, opera and other pushing to extend open web technologies?


      Yes, they are.

      Please .... how does a fight between what version 2 of something is named have anything to do with extending open technologies?


      That's not what the dispute is over. The dispute is over whether Release 4 of ECMAScript should:
      1) Include major new functionality, or
      2) Include only minor new functionality, with major changes outside of the scope of the standard and left for other languages (either proprietary or part of different standards efforts.)

      The first position favors substantial extensions to non-proprietary, freely-implementable standards for the web. The second does not.

      Microsoft is saying we have a standard, we have products that are written to that standard, and it will be expensive to supercede that standard with a replacement.


      A new version of a standard doesn't impose costs; no one is obligated to support the new version. ECMAScript Releases 1-3 won't stop working when a specification for ECMAScript Release 4 is released.

      OTOH, more features in the standard means more that can be done within the scope of the standard and without non-standard, proprietary alternative technology.

      They have no objections to something new, just dont break the old.


      New standards, even ones that aren't backward compatible, don't break old standards. ECMAScript 3 implementations don't break just because there is an ECMAScript 4 standard.
    22. Re:About Silverlight? by mitchskin · · Score: 1

      Silverlight is not about competing with Javascript at all.

      Yeah, right. Silverlight is a lot of things to a lot of people, but saying that it doesn't compete with Javascript/DHTML is silly. Both are ways of making web apps more interactive. The Chess speed demo from Mix 07 is one example of Microsoft explicitly comparing Silverlight to Javascript on speed. And speed (through, among other things, a type system) is one of the main additions in ES4.

      Silverlight is about competing with adobe flash, which by the way is way ahead of microsoft at the moment for the robust web app space, so why did you choose to bash Microsoft and not adobe? Never mind, we know the answer.

      The answer is because Adobe is helping with ES4 and Microsoft is spreading FUD about it.

      They have no objections to something new, just dont break the old.

      Ecmascript 4 doesn't break the old; it's completely compatible with (a superset of) Ecmascript 3. The Microsoft people haven't given a single example of an incompatibility; what they're saying is literally FUD.
    23. Re:About Silverlight? by Anonymous Coward · · Score: 0
      That may be but I've seen Microsoft in action within standards groups many times and stand by what I said. In fact, Brendan Eich obviously thinks similarly...

      One interpretation of your efforts here, in all charity, is that your employer wishes to handicap the standardized Web. As I keep saying, this is not relevant to ECMA TG1's deliberations.
      ...as I'm sure does anyone else who isn't on the MS payroll and has ever been unfortunate enough to share "participation" in a standards working group.
    24. Re:About Silverlight? by larry+bagina · · Score: 1

      silverlight is .net, so any .net language. Flash is scripted with a Javascript variant and Adobe/Macromedia is pushing the javascript changes big time.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    25. Re:About Silverlight? by Eric+Coleman · · Score: 1
      I would have modded Spiked_Three (626260) as a Troll.

      I'm surprised VBscript and ActiveX have been forgotten so quickly in the context of web technologies.

      As for Flash,

      Adobe has opened the source code of the ActionScript Virtual Machine, the high-performance ECMAScript implementation used in Adobe's ubiquitous Flash Player. Adobe has made the source code available under three prominent open source licenses, and contributed it to Mozilla for eventual inclusion in Firefox.
      from http://arstechnica.com/news.ars/post/20061107-8170.html

      More info at http://www.adobe.com/aboutadobe/pressroom/pressreleases/200611/110706Mozilla.html
    26. Re:About Silverlight? by larry+bagina · · Score: 1

      as far as the actual language is concerned (DOM, event handling, browser problems will be there for every language), PHP is a turd compared to javascript.

      Compare javascript anonymous functions with PHP anonymous functions.

      PS: javascript can be used for functional programming.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    27. Re:About Silverlight? by incripshin · · Score: 1

      I was thinking about this before, and Python would be totally doable. The reason I want it is because it already has a single implementation. All of the extensions that would need to exist to work well with browsers could be managed by a single group, so you won't have to code for three different implementations. I once wrote some JS that was harmless. It worked fine in Mozilla, but in IE it took hold of my CPU and filled up my swap as fast as my hard drive could go. Damn closures.

      Also, I would love to have a real threading model to use in web pages. I'm doing a lot of JavaScript right now, and I really miss the days of threads, mutexes, and condition variables. You can still do all that stuff, but it such a horrid mess.

    28. Re:About Silverlight? by Coniptor · · Score: 1

      They made a point and had something worth while to say that was NOT untrue.
      You're simply name calling, "I do that too but I give a reason for why."
      I want to hear your reason for WHY.
      Bet you can't give one without attempting to promote Microsoft can you?

    29. Re:About Silverlight? by blazerw11 · · Score: 3, Insightful

      It's about bringing robustness to web apps.
      I stopped reading your quote here because the only person that would say that is somebody from Microsoft's marketing department.
      --
      A great many people think they are thinking when they are merely rearranging their prejudices. -- William James
    30. Re:About Silverlight? by Rysc · · Score: 4, Insightful

      No Microsoft is not pushing Sliverlight and WPF here. OR saying scripting does not need to be extended. They are saying there needs something better than javascript It's true that this is not what Microsoft is actually saying, but you can be sure that's what they mean and want.

      Frankly anyone that thinks the present javascript is worthwhile keeping just has not programmed enough in it I have done a ton of work in javascript for the last decade or so, and you are very wrong. Javascript has always had its pains, but the pains are not inherent in the language and (very importantly!) these pains are rapidly going away. Throwing JS out now back before Mozilla 1.0 might have been reasonable, but by now JS support in all browsers is to a point where throwing out JS would be *stupid*.

      JS as a language is not fundamentally broken!
      --
      I want my Cowboyneal
    31. Re:About Silverlight? by Anonymous Coward · · Score: 0

      Python would be totally doable

      I disagree, my pet language would be a much better match! I'm only half serious here because I think lua or ruby would actually be more suited to web scripting than python. Javascript for all its faults can allow some incredible code and it'll run almost everywhere. The main issues I see are that very few people know the language well and that it's woefully inconsistent between browser implementations (I'm including DOM incompatibility here too).

      I'm doing a lot of JavaScript right now, and I really miss the days of threads, mutexes, and condition variables. You can still do all that stuff, but it such a horrid mess.

      Timers with simple lock and yield vars? It's not particularly elegant but then again neither are threads. Brendan Eich is well aware of the need for concurrency, hopefully we'll end up with a clean solution.

    32. Re:About Silverlight? by Anonymous Coward · · Score: 0

      Absolutely! Javascript (via AJAX) is currently the largest threat to Microsoft's proprietary garden locking up the world. They've tried fighting by keeping the Javascript engine in IE a substandard piece of shit, but the community has compensated for that with cross-browser Javascript libraries; so, the only way to keep Javascript (and, more importantly, AJAX) from continuing to weaken their market position, is to introduce a new (pseudo-open) walled-garden. This is the true lesson of Microsoft's Silverlight demo comparing the playing strength of a Javascript chess engine to a C# chess engine; trying to make the connections in people's minds that Javascript performance sucks and should not be seen as any sort of future for rich web experiences (but, if Microsoft was a little less evil, they would put a good Javascript engine into their browser).

    33. Re:About Silverlight? by maxume · · Score: 1

      Huh? Microsoft wants as many people as possible using their stuff, but I'm not sure they are stupid enough to think that they can close the internet. In fact, I'm pretty sure they aren't that stupid.

      --
      Nerd rage is the funniest rage.
    34. Re:About Silverlight? by Bert64 · · Score: 1

      The people who are committed windows users are usually those who've never used anything else, as you pointed out...
      This is why they rant and rave so much, because they don't want to use anything else but they still want their life to be easier. They want to have their cake and eat it.

      --
      http://spamdecoy.net - free throwaway anonymous email - avoid spam!
    35. Re:About Silverlight? by Bert64 · · Score: 1

      Whatever javascript may have, it's an open standard with a choice of implementations.
      Would you rather it were replaced by something closed and proprietary with only a single implementation available to you, and which also removes your choice as to what other software you run too?
      I'd much rather be free to choose.

      --
      http://spamdecoy.net - free throwaway anonymous email - avoid spam!
    36. Re:About Silverlight? by Anonymous Coward · · Score: 0

      They want to have their cake and eat it.

      I've always wondered, what's the point of having cake if you can't eat it? It's not usually display case material. Well, not for very long, anyway.

    37. Re:About Silverlight? by Bitsy+Boffin · · Score: 4, Insightful

      Javascript is a beautiful ulimately flexible language, implementations of it (esp Microsoft's) may suck, but the language itself is very good. Learn to use it properly, prototypes, closures, higher order functions... and you will soon learn what a remarkable language for scripting it is.

      --
      NZ Electronics Enthusiasts: Check out my Trade Me Listings
    38. Re:About Silverlight? by Anonymous Coward · · Score: 0

      Silverlight is for any .NET language, but C# and IronPython are the favorites for Silverlight examples, followed by VB.NET. Jscript.NET is a distant also-ran.

    39. Re:About Silverlight? by westyvw · · Score: 1

      And how about this cloud? http://www.eweek.com/article2/0,1759,2208888,00.asp

      "VOLTA just blows AJAX out of the water" and strands anyone non MS on an island I suppose....

    40. Re:About Silverlight? by Kristoph · · Score: 1

      The principal point of the argument is whether type='javascript' will encompass the changes Brendan is proposing or whether the new version will have it's own type. MS is arguing that backward compatibility will be much more difficult to achieve while Brendan is saying that this is, essentially, all about Microsoft trying to leverage their browser dominance to promote a competing language.

      Brendan makes a very strong case and I think it is true that if Microsoft is not forced to implement ECMAScript V4 they won't and instead try to promote Silverlight and WPF instead, if for no other reason then to weaken Google and other web based application vendors.

      ]{

    41. Re:About Silverlight? by CarpetShark · · Score: 1

      Opera's Haarvard suggests that it's about Silverlight, and Microsoft trying to close the web.


      (Sorry parent poster; I don't mean to be rude, but...)

      this is really calling out for a "no shit, Sherlock!"
    42. Re:About Silverlight? by zaydana · · Score: 2, Interesting

      Another javascript code monkey here. I think we all agree that fundamentally, javascript is quite a nice language. The point I think the GP was trying to make is that while the language itself is nice, the incompatabilities between the browsers, stupid APIs like the DOM, and other similar aspects mean that it would be easier to just start from scratch with another language where all of this goes away.

      While there is nothing technically stopping us from drastically modifying javascript, the problem is that as long as we require backwards compatability (as Mozilla is proposing), we can't fix any of the real big problems. You can see this in IE7 - while it's CSS support is a whole lot better than IE6, the fact that it still needs to be able to render pages which are designed for IE6 is rather limiting.

      The sad reality is you can't realistically "fix" javascript, due to how people expect backwards compatability from a language with the same name. While obviously the upgraded language would be backwards compatible, the APIs, which are what needs fixing in the first place, wouldn't be. The only way to work around that would be to completely separate the old and new languages. Which effectively, would be creating a new language.

    43. Re:About Silverlight? by SanityInAnarchy · · Score: 1

      Even if it helps MS, I want Javascript to die, die, die.

      You (and others) keep saying this, but with nothing to back it up. You just take it on faith that everyone else agrees with you.

      I think Javascript is a beautiful language. And I've worked with Ruby, Perl, Python, etc. There are about two or three things that I hate about Javascript, and all of them can be worked around with relative ease.

      --
      Don't thank God, thank a doctor!
    44. Re:About Silverlight? by Tablizer · · Score: 1

      You forgot to account for leap weeks :-)

      But I do agree the previous poster that JavaScript's original libraries were lacking stuff that JavaScript is commonly used for. Date validation and "trim", for example, should have been built into the libraries early on.

    45. Re:About Silverlight? by Anonymous Coward · · Score: 1

      Javascript is a beautiful ulimately flexible language, implementations of it (esp Microsoft's) may suck, but the language itself is very good.

      I've used JScript, Spidermonkey, KJS, Rhino, JavascriptCore -- and I haven't seen any good one. Can you recommend one that doesn't suck? At some point (0 for 5), one starts to believe that maybe, just maybe, it's the language and not just every single implementation.

      Learn to use it properly, prototypes, closures, higher order functions... and you will soon learn what a remarkable language for scripting it is.

      Those sound neat, but all the other languages I use (Ruby, Python, Scheme, etc.) have those already, and have better support for them (well, except prototypes, which are not the object model used by these). How exactly is Javascript more "beautiful" than any of these?

    46. Re:About Silverlight? by Anonymous Coward · · Score: 1, Insightful

      You want to add

      //works 99% of the time (thanks to pesky exceptions such as DST and leap years)

    47. Re:About Silverlight? by Anonymous Coward · · Score: 0

      JavaScript's original libraries were lacking stuff that JavaScript is commonly used for. Date validation and "trim", for example, should have been built into the libraries early on.
      Date validation is utterly trivial to implement in any version of JavaScript:

      function validDate(string) { return !isNaN(Date.parse(string)) }
      I'll give you "trim" - it only became utterly trivial to implement in JavaScript 1.2, which is, I admit, a rather recent development. Oh, wait, no, it's been trivial for a whole decade now:

      function trim(string) { return string.replace(/^\s+/, '').replace(/\s+$/, '') }
      Why the heck do you need one-liners like this built into the language? Current versions of JavaScript have problems (the lack of call-by-reference for primitive types is a pain), but they aren't anything to do with missing trivial library functions.
    48. Re:About Silverlight? by Alkrun · · Score: 1

      I agree that Microsoft's goal is probably to push Silverlight and locking up the AJAX space with something they have control over... But I'm not sure the word 'rapid' could be used to talk about anything as it pertains to Javascript. The language fundamentally hasn't moved in the last decade. There are some real benefits to Silverlight, there are also some real drawbacks in it's current versions but I don't see Silverlight as competing with Javascript. It's a competitor to Flash, not necessarily Javascript unless you step way back and try to summarize each technology in one sentence. Even then, it's a bit of a stretch.

    49. Re:About Silverlight? by Anonymous Coward · · Score: 0

      I would like to see a replacement as well.
      Why? You people keep saying this, but never seem to manage to articulate an actual reason why JavaScript needs replacing.

      The obvious choices would be something like PHP or Python, maybe even Ruby.
      So you'd like to replace a small, elegant language designed for scripting web pages, with one of: a bloated and poorly designed monstrosity like PHP, a general-purpose programming language with relatively poor scripting capabilities like Python, or a notoriously slow resource hog like Ruby?

      On the other hand, a functional programming language could be really interesting...
      A functional programming language... like, oh, JavaScript for example? Wow, I think your wish just came true... twelve years ago!

      Seriously, if you can't actually come up with a decent reason to scrap the status quo, why not accept that JavaScript is already as good as anything, and pressure Microsoft to implement the damn DOM properly already?
    50. Re:About Silverlight? by Anonymous Coward · · Score: 0

      Since when did Python have better support for functional programming than JavaScript? Guido hates functional programming and is constantly trying to reduce Python's support for it. Python doesn't even have proper anonymous functions.

    51. Re:About Silverlight? by Aewyn · · Score: 1

      There should be no problem with leap years, this is computed when reading from the Date object. For instance: One week from Feb 24 2007 is computed as Mar 03 2007 (no leap year). One week from Feb 24 2008 is computed as Mar 02 2008 (leap year).

      As for DST, that also takes effect only when retrieving values in a relevant format. When represented in local time on my system, Thu Oct 25 2007 00:00:00 GMT+0200 gives Wed Oct 31 2007 23:00:00 GMT+0100. As far as I'm concerned this is expected. The same Date objects would be represented in UTC format as Wed, 24 Oct 2007 22:00:00 GMT and Wed, 31 Oct 2007 22:00:00 GMT, respectively. Since the internal value of a Date object is independent of time zone I don't think it would make sense to have the function give different results depending on where it's executed.

      Now, admittedly, ECMAScript apparently ignores leap seconds...

    52. Re:About Silverlight? by man_of_mr_e · · Score: 1

      I'm sorry. No. I don't get it. Silverlight/WPF and Javascript don't solve the same problems. They're different things. Silverlight (at least in its current form) simply isn't able to "replace" javascript.

      I think all those people making this claim are simply jerking their knees in response to MS making a fairly common sense argument. There are enough incompatibilities in Javascript today, introducing more will just exacerbate the problem.

      In my mind it would be fine to extend ES as much as you like, so long as it's a totally new type that cannot be "accidentally" executed by older ES implementations. In effect, making ES4 an entirely new language, even if it is largely based on ES3.

      Stop making this a MS vs Everyone else argument. Stop trying to see imagined motivations and then arguing against those motivations. Address the actual arguments.

    53. Re:About Silverlight? by RobertM1968 · · Score: 1

      I think it is more than just about Silverlight. AJAX (and other technologies already existing - as well as creatable with the new scripting extensions) can be/become a big threat to MS's Active-X, .NET and other similar technologies - which can be leveraged into a cross platform, cross browser world - something MS doesnt want to see.

      If MS doesnt "invent" a method to ensure that the new extensions are created in a manner they can control, it will creat a further slippage of their market - that means retaining/gaining control by making the new extensions part of a different language which they can then leverage and control (like they tried with JScript, etc).

      Conversely, if the new programming extensions are added to JavaScript (where they should be), which has been decided to be a standardized, cross platform venue, then MS is "forced" to make their implementation conform to the standard to ensure they do not garner further heat for attempting to break standards (that they will then have little or no control over).

      MS NEEDS the new scripting extensions to become part of another language, because it will allow them at least the chance of implementing an incompatible model, claim it is the standard, use IE to leverage that new "standard" and lock things like AJAX and other technologies out of the new enhanced web formats by ensuring there are a plethora of programmers using MS's closed model and "new" language.

    54. Re:About Silverlight? by Tablizer · · Score: 1

      The "Date" libraries did not exist in some of the earlier browsers such that you couldn't rely on them to exist. I think the pattern matching with /.../ is fairly new also.

    55. Re:About Silverlight? by Rysc · · Score: 1

      the incompatibilities between the browsers ...which are fast becoming irrelevant.

      stupid APIs like the DOM I do not agree. JavaScript can't fix the DOM by changing the API used to access it. When dealing with the realities of what the browser is you have only a series of poor choices for how you interact with it.

      While obviously the upgraded language would be backwards compatible, the APIs, which are what needs fixing in the first place, wouldn't be. This is nonsense.

      The only way to work around that would be to completely separate the old and new languages. The only way around a problem I don't see is to throw out and replace a language which is, by some miracle, almost a real, usable standard?

      Let me ask this... do you want to have to write one script for each possible client browser, each in its own language? Because if you throw out JS that is *precisely* what you will get.
      --
      I want my Cowboyneal
    56. Re:About Silverlight? by Rysc · · Score: 1

      But I'm not sure the word 'rapid' could be used to talk about anything as it pertains to Javascript. The language fundamentally hasn't moved in the last decade. What are the two worst things about JavaScript? Most people will tell you "the DOM" and "browser incompatibilities." If you are talking about something else, then never mind.

      The DOM is not going away and is not likely to be better in any other language. The API used for it could be improved--maybe, I'd like to know what is considered an improvement here. Browser incompatibility are going away, /rapidly/, because people are becoming good at working around them. The language may be static and unchanging, and implementations maybe be relatively slow-moving, but progress is being made to make that irrelevant.

      In a future where ecmascript 4 exists the one, big bugaboo people are talking about, namely backwards incompatibility, would not be an issue for the same reason and if necessary in the same way that Navigator 4.x can do AJAX--people find a way, knowledge is shared, and we all move on.
      --
      I want my Cowboyneal
    57. Re:About Silverlight? by hilton_a · · Score: 1

      There will be soon. Go check out v1.1 of Silverlight, I believe they are shipping a portable version of the CLR and the ability to code in C#, ironruby or ironpython - dynamically compiled.

    58. Re:About Silverlight? by hilton_a · · Score: 1

      ..or you could do some research. v1.1 will have support for strongly typed scripting.

    59. Re:About Silverlight? by hilton_a · · Score: 1

      "Let me ask this... do you want to have to write one script for each possible client browser, each in its own language? Because if you throw out JS that is *precisely* what you will get."

      True, but maybe your goal is to enable new possibilities, a better web etc. Of course, then you'd need to replace css and do something better than HTML. Oh well. May as well let Adobe or MS show us the way.

    60. Re:About Silverlight? by Jaxoreth · · Score: 1

      It's about bringing robustness to web apps.
      I stopped reading your quote here because the only person that would say that is somebody from Microsoft's marketing department.
      Kind of like "putting the fun back into the Pentium processor"?
      --
      In general, it is safe and legal to kill your children. -- POSIX Programmer's Guide
    61. Re:About Silverlight? by DragonWriter · · Score: 1

      Javascript is a beautiful ulimately flexible language, implementations of it (esp Microsoft's) may suck, but the language itself is very good.


      "Ultimately flexible"? Hardly. Its not as bad as some people say it is, but its nothing all that special, either.

      Learn to use it properly, prototypes, closures, higher order functions... and you will soon learn what a remarkable language for scripting it is.


      Remarkable? Compared to...what? Scheme? Lisp? Ruby? I don't think so.
    62. Re:About Silverlight? by DragonWriter · · Score: 1

      I was thinking about this before, and Python would be totally doable. The reason I want it is because it already has a single implementation.


      Single Implementation? No, it has several: CPython, Stackless Python, IronPython, and Jython, off the top of my head. OTOH, while not externally standardized, the various implementations are fairly consistent/compatible, unlike some other languages that might be considered.
    63. Re:About Silverlight? by incripshin · · Score: 1

      CPython is the 1TP (one true python; see 1TBS). I've never given any thought to any other implementations, so it's natural for me to forget about them.

      What might be okay is if there's a Python interface to .NET or Java. For example, there is a way to call the POSIX open(2) or stat(2) from within Python. Or maybe building a way to write simpler glue code between python and C# or Java. But to re-implement it just for the sake of speed and at the cost of correctness is bad. This is why I hate IronPython and Jython. But though I hate the idea of them, they are OSS and probably are doing the best that they can to work identically to the real Python. I can't say so much for Microsoft's JScript.

      I just read about Stackless, and it seems okay: a patched version of Python to handle threading better. Guido van Rossum said in an interview that one thing he dislikes about Python is the way it handles threading, and it's one of the things that will be improved in py3k. There's probably an okay explanation for it, but I don't know why Stackless isn't just a Python module and why it has to be a full-blown patch.

    64. Re:About Silverlight? by DragonWriter · · Score: 1

      There's probably an okay explanation for it, but I don't know why Stackless isn't just a Python module and why it has to be a full-blown patch.


      As I understand it, the GIL and the things that make it necessary are fairly central to the (pre-3.0 -- I don't know if this has changed in the 3.0 alpha, though it was certainly talked about for Py3K; I suppose if I wasn't incredibly lazy today I could just check) CPython implementation, so Stackless needs to reimplement the core of the Python interpreter, so it really wouldn't work well as a module; its not a reimplementation of the threading libraries, its a reimplementation of the core of the interpreter to make better threading possible.
  8. Multithreading! by Anonymous Coward · · Score: 5, Interesting

    If they're serious about turning the browser into an application platform, there needs to be a multithreaded language with full DOM access, whether that is Javascript or something else. An application where the UI stalls the processing or the other way around is just not acceptable. Since Javascript multithreading has been rejected before, because it's supposedly too difficult for the typical script author, I suspect that Microsoft may have the right instinct here to go with a separate language for "pros", keeping Javascript simple for things like mouse rollovers and other eye candy.

    1. Re:Multithreading! by cromar · · Score: 1

      While that would be pretty neat, something like a Java or Flash solution is already available. Or, you know, writing a desktop app... Or, perhaps in-browser JavaScript interpretors could start optimizing a page's scripts to be multi-threaded with no changes to the language. I'm not sure how feasible that would be though.

    2. Re:Multithreading! by soliptic · · Score: 3, Insightful

      Disclosure: I am a web developer, but my use of javascript extends only as far as your "simple things like rollovers". (Well, not actually rollovers, that's done in CSS unless you're an idiot, but...) I am not a "proper" Developer. Hence, this genuine question:

      To solve the problem of "the UI stalls the processing or the other way around" (which, funnily enough, I only ever really encounter right here on Slashdot), why would the script language need to provide multithreading to the script author (typical or otherwise).

      Surely you could solve that particular issue by running Firefox-itself code in one thread, and on-page-javascript-or-whatever-script in another thread (or perhaps one thread per .js, or per site, or per tab, or whatever). You wouldn't need to actually let the script writer work in multiple threads, would you?

    3. Re:Multithreading! by Anonymous Coward · · Score: 0

      Mozilla has a contender in the "web app" arena: Prism. That's what this is basically about. Adobe, Microsoft and Sun have their own ideas and products for web based applications. To say that one should use Java or Flash simply means to discount Mozilla's chance entirely (which I won't object to, if they neglect basic API and language requirements).

    4. Re:Multithreading! by cromar · · Score: 1

      While I wasn't saying those solutions should be used (just could be used), I hadn't heard of Prism. Here's a link FWIW. It's a fairly interesting concept.

    5. Re:Multithreading! by Anonymous Coward · · Score: 0

      And still a typical script author won't be able to use the multithreading feature of the new language. Heck, s/he may even not know or won't learn the new language. So, what's the difference between that and JavaScript modification that allows multithreading. The bottom line is, if you want to use multithreading, don't be lazy and learn how to code for it.

      As far as Microsoft goes, forgive me for being skeptical. I see them wanting to create a new language simply because they want to control the new language, like how they went with .NET and C#. It's not the instinct to make developers' life easier that governs Microsoft, it's the control to help them perpetuate their monopoly that does.

    6. Re:Multithreading! by _xeno_ · · Score: 5, Interesting

      Surely you could solve that particular issue by running Firefox-itself code in one thread, and on-page-javascript-or-whatever-script in another thread (or perhaps one thread per .js, or per site, or per tab, or whatever). You wouldn't need to actually let the script writer work in multiple threads, would you?

      Yes, you would. The basic reason is that while, conceptually, you're right that you could use your solution to prevent the browser from locking up, you'd still have to worry about the page locking up.

      JavaScript code is generally only executed during events. These events include relatively minor things like scrolling, clicking, typing, or basically any form of interaction with the page. Now you could make the page code "smart" and avoid locking the page if there are no JavaScript event handlers interested in the current event, but you'd still potentially have issues where the page would essentially "freeze" until whatever long-running task completed. Since JavaScript events also fire when the page is unloaded, such a "freeze" could also prevent the user from navigating away from the page.

      This leaves us with a potentially responsive browser UI, but a tab that can't be used until its task completes. This is still better than the Firefox situation (and, due to the way Firefox is designed, something that isn't going to change in Firefox for a long while), but still undesirable.

      To allow the page to remain responsive while the page is doing some long-running task, you'd have to allow multiple threads so that the event handlers could run.

      This is, in a way, the problem that "asynchronous" part of AJAX solves. It doesn't allow another thread to be run via script, but it does allow the page to send the task back to the server to execute, allowing the page to remain responsive while whatever long-running task completes.

      I think a similar solution could work via JavaScript: instead of sending it off to the server, allow a script to be executed asynchronously. It would have no access to any information not sent to it when it was started (as otherwise the thread synchronization issues would remain), but it could run a task and then return a result.

      There can be some argument over whether JavaScript should ever be used for a "long-running task" but the reality is that more and more web applications are finding that it makes sense to allow certain tasks to run on the client instead of burdening the servers. Most clients have the memory and CPU to spare, and it makes sense to use those resources instead of making the bottle-neck be the server.

      Unfortunately the current solutions cause the page to become non-responsive while JavaScript executes and, in the case of poorly designed browsers, cause the entire browser to be non-responsive.

      --
      You are in a maze of twisty little relative jumps, all alike.
    7. Re:Multithreading! by Anonymous Coward · · Score: 1, Interesting

      Web applications themselves have a UI (expressed in HTML, SVG, etc.) and processing code (loading data from the server, sorting, formatting, calculations, whatever). If you want to avoid UI stalls, you have to break up the processing into small chunks and return control to the UI frequently. Javascript has no support for doing that in the middle of a task, let's say in a for loop. You have to finish the function call, which means you have to manually keep track of the fragments that you have processed and the fragments that still need to be processed, and often the efficiency is horrible because you have to make the fragments really small so that the UI stays responsive even on slow machines. That is much worse than back in the days of cooperative multitasking. At least then you could relinquish control and have the OS remember where you left off (and user interfaces would still stall because the programmer misjudged the time it would take to do something before he offered control to another task).

    8. Re:Multithreading! by Anonymous Coward · · Score: 0

      That's not my argument. I WANT Javascript to support multithreading. Whenever this is brought up, the powers that be reject it. If Javascript doesn't get multithreading, there needs to be another language. Otherwise Silverlight has already won. Ubiquitous availability of the HTML platform only goes so far, especially when Microsoft can make their platform available to 90% of the desktops with a simple automatic update.

    9. Re:Multithreading! by DragonWriter · · Score: 1

      If they're serious about turning the browser into an application platform, there needs to be a multithreaded language with full DOM access, whether that is Javascript or something else. An application where the UI stalls the processing or the other way around is just not acceptable.


      As soon as your multithreaded environment has shared state, you run into the possibility that what one part of the system is doing with that shared state can stall the other part of the system. Giving multiple threads full access to the DOM doesn't seem like it would reduce the possibility for the UI stalling non-UI processing or non-UI processing stalling the UI. Really, it seems more sensible to have a multithreaded environment where only one thread has access to the DOM but threads can communicate via asynchronous channels of some kind and only block waiting for eachother where logically required by the task they are doing.
    10. Re:Multithreading! by sgrover · · Score: 1

      Full multithreading? When was the last time you used JavaScript? Have you never had to deal with the asynchronous issues with images/windows/iframes? Have you never used this asynchronous feature to do things a web page just wasn't meant to? I sure have. And the asynch stuff is as multithreaded as I need to get for any web based application. Asychronous may not be the same as multithreading, but it's close enough for my needs. I would propose that if you truly need multithreading then you are building a DESKTOP application, not a web based application.

    11. Re:Multithreading! by Anonymous Coward · · Score: 0

      Event based programming ("asynchronous") is indeed not the same as multithreading. Javascript event processing is delayed until the currently executing script has finished. Events are fired asynchronously, but they are not handled concurrently with already running code. No serious processing can be done on the client without multithreading. Users don't accept unresponsive UIs. That limits the HTML/SVG platform to mere presentation of data which is processed/generated server-side, while other platforms (for example Silverlight) can be used to replace local applications with scripted code (shorter time to market than "desktop applications", robust prototype implementations, easier for third parties to modify and expand, etc.)

    12. Re:Multithreading! by Hatta · · Score: 1

      I understand the desire to have remote apps, but why does this all have to be shoehorned into the browser? HTTP is for transferring hypertext, not applications. The web isn't the internet. We have dozens of protocols going over IP, what's one more? Why not come up with an application transfer protocol and distribute an ATP browser with your OS? Then we wouldn't have to deal with all these issues that come up when you try to run applications on a protocol designed for serving static pages.

      --
      Give me Classic Slashdot or give me death!
    13. Re:Multithreading! by soxos · · Score: 1

      What happens when that script thread gets hung up and the firefox thread is waiting on it to complete to finish rendering the page? What's you've described is basically what is going on in browsers right now. Multithreading in the script level would allow for more greater stability and more efficient processing. Check out this demo for a great visual demonstration of the capabilities of multithreading on the problem of sorting.

    14. Re:Multithreading! by SanityInAnarchy · · Score: 1

      I think a similar solution could work via JavaScript: instead of sending it off to the server, allow a script to be executed asynchronously. It would have no access to any information not sent to it when it was started (as otherwise the thread synchronization issues would remain), but it could run a task and then return a result.

      That would make Javascript a lot less usable.

      I really see only one way that this could work well, and that is to not allow complex structures to be passed in -- to basically turn it into multiprocessing, the way it's done on Unix, with pipes. This is workable, but also inefficient and frustrating.

      Then again, you're kind of already doing the serialization to talk to a web service... But still. There has got to be a better solution.

      As for why I consider this unusable, just look at some of the better event handling code. Passing a closure to be executed asynchronously is a really cool design pattern, that I really would not want to lose.

      --
      Don't thank God, thank a doctor!
  9. To me, this seems vaguely pointless for browsers by cmowire · · Score: 4, Insightful

    By the time that a good chunk of all browsers actually support ECMA 4, it's going to be a "nice to have" feature that nobody's going to be too keen on.

    The road forward, in true hacker fashion, is probably to write translators so that part of your PHP, Ruby, Perl, Java, or C# code magically runs on the client, treating ECMA 3 as a vague intermediate language.

    ECMA 3 can be the x86 assembly language of teh intarweb. No CPU actually executes real x86 instructions anymore, they translate it into internal RISC/VLIW-ish operations. Very few programmers write much of any raw x86 instructions anymore.

    Of course, this may or may not be handy for the other ECMAScript implementations like LiveScript.

  10. Opera is the Ron Paul of browsers by athloi · · Score: 1, Interesting

    Avoid the two big warring parties that are too big to get anything right, strip down your runtime and spend more time being less concerned with government or browsers. Opera is the Ron Paul of browsers in that it seems a lot of us use it online, but you never see mention of it in the "real world," and this article is part of that trend. Why?

    1. Re:Opera is the Ron Paul of browsers by Anonymous Coward · · Score: 4, Funny

      There's no need to pull Ron Paul's abysmal ability to properly render real world websites into the discussion.

    2. Re:Opera is the Ron Paul of browsers by snl2587 · · Score: 1

      I think the reason no one discusses Opera is because it is still viewed as an alternative and not a major player. Mozilla and IE have been going at it for years and Opera has managed to stay out of it at the cost of not being viewed as a major contender. The moment Opera gets involved in a major "future of the web" dispute, it will be seen as a major browser.
      Where I work there is a general feel that if something works in IE and Firefox, test it in Opera. If it doesn't work in Opera, publish it anyway.

    3. Re:Opera is the Ron Paul of browsers by Anonymous Coward · · Score: 0

      So, you use Ron Paul... a lot... online... and then never mention it in the 'real world'? Are you afraid of somebody finding out your sick little fetish?! You are sick man, sick!

    4. Re:Opera is the Ron Paul of browsers by freshman_a · · Score: 1


      but you never see mention of it in the "real world," and this article is part of that trend. Why?

      I think it depends on where you look in the "real world". I've seen Opera mentioned a lot, just not always when it comes to the desktop. While I use Firefox on my desktop and laptop, I use Opera on my PDA, cell phone, and Wii. Last I checked, IE and Mozilla/Firefox weren't available for any of these devices (at least, with respect to the devices I own).

      Also, this article is focusing on the discussion between 2 specific people - one works on Mozilla, one works on IE. If an Opera developer were to become involved, Opera would be part of the discussion.

    5. Re:Opera is the Ron Paul of browsers by CodeBuster · · Score: 1

      but you never see mention of it in the "real world," and this article is part of that trend. Why?

      because the add-ons for Firefox are simply too good to pass up. The rest of the population doesn't know about either Opera or Firefox and just uses the pre-installed IE on their Windows machine. Seriously though, the add-ons for Firefox add a TON of value to the Mozilla platform. Is there anything like the range and quality of available add-ons for Opera? I don't know, but I would bet the answer is probably no.

    6. Re:Opera is the Ron Paul of browsers by elcid73 · · Score: 1

      Nope. all the reasonable ones are baked right in.

    7. Re:Opera is the Ron Paul of browsers by Alystair · · Score: 1

      No one talks about ARM either, but they have chips in just about everything these days. Just you wait, and the iceberg will come into view. Shhh.

    8. Re:Opera is the Ron Paul of browsers by ducomputergeek · · Score: 1
      I was going to mark funny, but then decided to answer instead.

      I use Opera on Mac for a long while, but then when I started using more Google stuff, I went back to FF for most things. But I've been disappointed with FF because I remember when FF's goal was to make a lighter, faster Mozilla. Well now it seems to gobble up more ram and system resources than ever and Opera loads most webpages faster.

      Still I have keep a PC around because there are some webapps I use in development that are still MSIE only.

      --
      "The problem with socialism is eventually you run out of other people's money" - Thatcher.
    9. Re:Opera is the Ron Paul of browsers by CodeBuster · · Score: 1

      The add-on model is superior from a design perspective because it allows easy incremental updates, progressive additions of features which remain nicely separated from the main browser (ala the Chain of Responsibility AND Strategy Design Patterns) in a layered stack, and it allows third party developers, who may have good ideas (no one person has a monopoly on good ideas or features), an easy and structured access to the rendering stack with convenient hooks and opportunities to handle events and modify output accordingly. Now granted, as a developer my needs and wants with regard to a browser are probably more extensive than the average Joe, but how does Opera compare with a fairly typical setup of Firefox with addons?

      A common group of addons is: AdBlock Plus, NoScript, Greasemonkey, and CustomizeGoogle for example. Does Opera have support for all of those features "baked in"? I doubt it.

    10. Re:Opera is the Ron Paul of browsers by cmburns69 · · Score: 1

      Because opera has maybe 3% at most of the market share. Firefox has 10X the market share, and IE has almost twice that.

      This is why nobody brings up opera in these debates, because statistically their position is insignificant. If they grow their market share, then people will start to listen.

      http://www.w3schools.com/browsers/browsers_stats.asp

      --
      Online Starcraft RPG? At
      Dietary fiber is like asynchronous IO-- Non-blocking!
    11. Re:Opera is the Ron Paul of browsers by Anonymous Coward · · Score: 0

      Except for Adblock Plus. The Opera equivalent of Adblock sucks, plain and simple. I want to use Opera (I really do) but I just can't handle the Internet without using Adblock Plus.

    12. Re:Opera is the Ron Paul of browsers by jp10558 · · Score: 1

      Well, the answer is sort of. Opera has block content, which does some of what AdBlock Plus does, but not as well. Opera has site specific preferences or userJS which let you do things like disable javascript on a site by site basis and inject a script for UI sort of "in" the site. UserJS is actually equivelent to Greasemonkey, and compatible with the Greasemonkey scripts. I have no idea what Customize Google is, but with UserJS + UserCSS you certainly can change up websites.

      All that said, Opera often falls into not doing anything quite as well as an extension might. The upside is Opera is generally much better performing that Firefox, probably because they don't do extensions/XUL like Firefox does. And they tend to have a unified UI.

      I'm really tied to Opera for speed, MDI, IRC at work, and tab handling, but I want an Eee PC with Xandros. This basically removes my old web fixer stalward proxomitron and I don't know how I'll handle the ad-blocking... Maybe WINE will be up there for prox finally, but I don't see a lot of hope so far.

      --
      Opera, Proxomitron-Grypen,GPG 0x0A1C6EE3
    13. Re:Opera is the Ron Paul of browsers by mdew · · Score: 1

      adblock for opera? sure, no whitelisting, but sure its available :)

      --
      http://www.fanboy.co.nz/adblock/
  11. Figures by Anonymous Coward · · Score: 0

    A whole other language? Give me a f**king break. They already tried that crap with c#.

    What don't those retards understand about the word "standards"?

    1. Re:Figures by TheNetAvenger · · Score: 0

      They already tried that crap with c#.

      What don't those retards understand about the word "standards"?


      Which retards? C# is a standard that exists far beyond MS...

  12. Just don't break things! by Roadkills-R-Us · · Score: 4, Insightful

    As a user, I really couldn't care less which way it goes.

    Just don't break things that work now!

    As a developer, I really don't care, either.

    Just don't break things that work now!

    1. Re:Just don't break things! by sm62704 · · Score: 1

      As a shopkeeper, I really couldn't care less which way it goes.

      Just get that bull out of my china shop!

      -mcgrew

      --
      mcgrew's razor: Never attribute to stupidity that which can be explained by greedy self-interest
    2. Re:Just don't break things! by romi · · Score: 1

      Mozilla breaks things all the time. Witness the bang up job they did with removing support for install.js (which allowed plugins to install without a browser restart):

      https://bugzilla.mozilla.org/show_bug.cgi?id=352762

      But hey, they're OSS lovers, so they must be angels.

  13. Not sure about this... by The+Master+Control+P · · Score: 2, Insightful

    Honestly, if we're going to have a new version that's significantly different and "updated," just fork: Keep the original code that works well as one version and then rewrite it as the basis for the new one. The first thing that comes to my mind is KDE4: It's a hell of an idea, but I think they'd best keep 3.5.* around until they're done with 4.0.

    In short, give people a choice: Let me choose if I want to write for the stable venerable base or the new pretty whizbang version.

    1. Re:Not sure about this... by YU+Nicks+NE+Way · · Score: 1

      But that's exactly what Wilson is saying -- leave ECMA 3 as it is, broken and all, and add something new.

    2. Re:Not sure about this... by Anonymous Coward · · Score: 5, Insightful

      And that is exactly what ECMA 4 does: it leaves ECMA 3 as it is (except for a few really minor and obviously broken things that everyone except for Microsoft agrees on), and then adds some sorely needed extras on top of it which the open web really needs in order to stay competitive with the closed-offerings by the likes of Microsoft.
      All current-day JavaScript will continue to work! Backward compatibility has been the number one goal during the development of ECMAScript 4. But Microsoft is scared - web applications have finally started fulfilling the original promise shown by Netscape, making the OS largely irrelevant. And so Microsoft is throwing up any- and all roadblocks it can think of, stalling for as much time as possible in order to create enough lock-in with WPF e.a. that they'll remain relevant. Understandable, of course - they're a company, trying to survive. But a really bad thing for the open web, and something which must be overcome.

    3. Re:Not sure about this... by Anonymous Coward · · Score: 0

      Yah, lets do that, and make the web even more of a language junkyard than it already is. It is a shame that the web 'got away' though the efforts of language designers who did not know what they were doing. If they had used scheme instead of javascript we would all be a hell of a lot better off.

    4. Re:Not sure about this... by YU+Nicks+NE+Way · · Score: 2, Informative

      Are you trying to tell me that the addition of new reserved words to a language is a "small" change? [(ee the ES4 overview for details.) Particularly when those reserved words are common terms like "cast"? Sorry, but that's major breakage, and not a small matter. If the default were to behave exactly as ES3 or ES4 interim, and the new restrictions only applied then, it might be a justifiable change -- but that is explicitly not what the overview says.

      Sorry, but this is BS.

    5. Re:Not sure about this... by 2short · · Score: 1

      So, you agree with the MS guy.

    6. Re:Not sure about this... by bendodge · · Score: 1

      But Wilson wants the new language to be proprietary MS stuff. That's the big catch.

      --
      The government can't save you.
    7. Re:Not sure about this... by sm62704 · · Score: 1

      Keep the original code that works well

      I don't mind (too much) when they add features. Some new features I actually find handy, although there's little I can do with today's tools that I couldn't do ten years ago.

      But deprecating features? Why should I have to go back and rewrite a ten year old page because they're deprecating <font size="+1"> or <font color="000000">?

      -mcgrew

      --
      mcgrew's razor: Never attribute to stupidity that which can be explained by greedy self-interest
    8. Re:Not sure about this... by YU+Nicks+NE+Way · · Score: 1

      Oh? Show me where that is said, would you?

    9. Re:Not sure about this... by xpl_the_myst · · Score: 1

      http://blogs.msdn.com/cwilso/archive/2007/10/31/what-i-think-about-es4.aspx

      A less-corporate-speak version of the MS executive's side here.

      --
      This sig is empty.
    10. Re:Not sure about this... by bishiraver · · Score: 1

      Don't we already use language=text/javascript?

      Why not require that you use language=text/ecma4 if you want to access the new shit?

    11. Re:Not sure about this... by YU+Nicks+NE+Way · · Score: 1

      That would have made sense, wouldn't it? Shame that the committee requires something else to preserve the old-style behavior.

    12. Re:Not sure about this... by Briareos · · Score: 3, Informative

      If the default were to behave exactly as ES3 or ES4 interim, and the new restrictions only applied then, it might be a justifiable change -- but that is explicitly not what the overview says. I don't know which overview you've been reading, but mine says this:

      III. Compatibility
      [...]
      Syntax
      Some identifiers that were legal names in ES3 (let, yield, cast, is, and a few more) are keywords in ES4. Other keywords in ES4 were future reserved words in ES3, and correct ES3 programs do not use them (class, interface, public, private, and many others), though some implementations allow them to be used as names. Sometimes the new keywords are contextual and can continue to be used as names, but in general an ES4 implementation that must be able to process all ES3 programs must be told which dialect--ES3 or ES4--it is looking at, so that it knows whether to treat these identifiers as keywords or not.

      The mechanism that supplies the dialect information will depend on the environment. In a web browser the information comes from the MIME type of the script or from a version parameter on the SCRIPT tag in the document. New web pages that choose to use ES4 will have to specify the dialect. So unless you specify that some script block is actually version 4 ES4 interpreters are supposed to treat it as version 3 code.

      np: Savath & Savalas - Tormenta De La Flor (Golden Pollen)
      --

      "I'm not anti-anything, I'm anti-everything, it fits better." - Sole

    13. Re:Not sure about this... by YU+Nicks+NE+Way · · Score: 1

      That isn't how I read the block -- the whole problem is the "an ES4 implementation...must be told which dialect--ES3 or ES4--it is looking at". That says to me that old pages will need to be changed to specify their (older) dialect.

    14. Re:Not sure about this... by Edward+Kmett · · Score: 1

      Almost all of the changes are backwards compatible.

      Ecmascript 3 wisely reserved a lot of the keywords they could anticipate. However there are a handful that would impose a painfully high semantic burden on future users if tried to shoe-horn themselves into a pre-reserved java/c++ equivalent. They have to balance the unbounded semantic burden of understanding the language in the future with the bounded transitional burden of allowing existing programs to run in Ecmascript 4. Given the array of features (templates, a novel namespace structure, generators, etc) that they've been able to cram in in unused nooks of the existing grammar I am consistently amazed that they were able to get away with extending the keyword set so little.

      'let', 'yield', 'is', 'cast', and 'as' are common keywords in other existing languages but don't exist in java/c++. (I may have missed one or two) Wherever possible they made their 'keywords' conditional so they could be used only in places they would have been illegal in the previous grammar. The problem with those 5 is that they have to occur in normal expressions to be useful.

      It also doesn't appear like it'll go mainstream for another year or two.

      That is an awful lot of time to s/cast/cast_/g

      In ten years of heavy Javascript code-writing, the only one of those to have occurred in my code in a breaking position is 'yield' in a javascript-based threading library and I'd gladly trade in my use of the term for the generator functionality provided in Ecmascript 4.

      --
      Sanity is a sandbox. I prefer the swings.
    15. Re:Not sure about this... by StingRayGun · · Score: 1

      All this squabbling is going to do is result in Adobe owning the web. While MS and FF are arguing over how to bring an advanced scripting language to the web Adobe already has brought one to 90% of it with Actionscript3.

      If Microsoft had a shred of intellect in it's massive evil encrusted soul it would realize embracing ECMA4 and an open web is nothing but good for everyone, including MS. MS should focus on making IE more stable, user friendly, faster, and safer then FF, and building the best development tools for JS programming available. By putting all their eggs in one OS basket they are just going to lose in the end as that technology is no longer needed.

    16. Re:Not sure about this... by Myen · · Score: 1

      Mozilla currently already does (1.7 had new keywords like "let" and "yield"). If you leave the version off, it defaults to a mishmash where no new keywords are introduced (i.e. those things don't work, and you get compatibility), and only things that were previously syntax errors (such as destructing assignment - [a,b] = [1,2];) get upgraded.

      So, yes, they're already doing this in practice - if the dialect isn't explicitly noted, it's "whatever won't break old scripts".

      (note: JavaScript is Netscape/Mozilla's version - the standard is ECMAScript, and MS's implementation is JScript. And Adobe's version is ActionScript. Hence they can all do their own numbering...)

    17. Re:Not sure about this... by jsebrech · · Score: 1

      If Microsoft had a shred of intellect in it's massive evil encrusted soul it would realize embracing ECMA4 and an open web is nothing but good for everyone, including MS.

      How exactly is an open web good for MS? I see no business case here whereby MS wins. The only business case that makes sense is to try to extend the microsoft/office cash cow's life until they manage to gain footholds in new markets.

      Ofcourse, I do agree it is good for just about everyone else, which is why it is inevitable. We're not talking about "if", we're talking about "when".

    18. Re:Not sure about this... by DragonWriter · · Score: 1

      That isn't how I read the block -- the whole problem is the "an ES4 implementation...must be told which dialect--ES3 or ES4--it is looking at". That says to me that old pages will need to be changed to specify their (older) dialect.


      But the later makes clear that ES4 used on a web page must be explicitly tagged ("In a web browser the information comes from the MIME type of the script or from a version parameter on the SCRIPT tag in the document. New web pages that choose to use ES4 will have to specify the dialect.")

      I read the whole thing as saying the JavaScript implementation (which is logically kind of a "standalone" thing separate from a host application, though it will often be embedded in one) must always be told (usually, presumably, by the host application, e.g., the web browser) whether ES3 or ES4 is being used, but the standard treatment of web pages by browsers is to assume ES3 when no information is given, and only treat code as ES4 if it is explicitly tagged. That is, the browser as host application will assume ES3 if the page embedding/linking the script doesn't say anything.

    19. Re:Not sure about this... by bendodge · · Score: 1

      Naturally the MS didn't say that, but Eich did. It seems kinda self-evident.

      --
      The government can't save you.
  14. What's this all about? by Anonymous+Conrad · · Score: 5, Interesting

    OK, maybe I'm missing the point here but AFAICS no-one's arguing against the new draft; instead, the argument about whether you accept the new syntax inside tags or not. One side says yes, other says we should keep that for older JS and put the new stuff inside tags or similar so we can tell ahead of time which one we're supposed to be dealing with and make sure we don't break existing web code.

    I don't see anything about closing the web or stomping on the little guy or anything like that. Where's that coming from?

    1. Re:What's this all about? by mapsjanhere · · Score: 1

      To answer the last question, while the often quoted opera.com article is sarcastic in calling Microsoft the good guys, this might be on of the cases where the evil monopoly is right and the valiant fighter for freedom is just dead wrong. And we know, THAT CAN'T BE!

      --
      I'm aging rapidly, I bought a new game and had no idea if my machine was good for it.
    2. Re:What's this all about? by Coniptor · · Score: 1

      "I don't see anything about closing the web or stomping on the little guy or anything like that. Where's that coming from?"

      Microsoft's established reputation which they have shown NO desire to alter, and their new pet technology Silverlight, if your actually reading the posts. Don't you know? They helped get the PC into the homes of millions. They *DESERVE* to own and control all platforms. After all they have to keep making their shareholders richer and richer irregardless of ANYTHING else going on in the world or who they HURT. Shouldn't matter that they want everyone including government systems putting ALL their eggs in one basket just to make them happy. If I'm captain obvious you must be captain oblivious.

    3. Re:What's this all about? by LordEd · · Score: 1

      I don't see anything about closing the web or stomping on the little guy or anything like that. Where's that coming from?
      This is Slashdot. You must be new here. Anti-Microsoft sentiment is worth an extra +1. Claiming Microsoft eats baby penguins is worth another +1. Backing up your statements with proof or facts is worth an extra +1 but is purely optional.
    4. Re:What's this all about? by Stradivarius · · Score: 3, Interesting

      I think the argument goes like this:

      The existing Javascript/ECMAScript has a large installed base. Thus if you simply extend the existing spec in a backwards-compatible way, you allow developers to
      keep using Javascript and upgrade with new features at their convenience. This keeps everyone using Javascript and *should* be a smooth and gradual transition.

      However, if you switch to a require a separate mechanism to execute or a incompatible language, you force developers to rewrite their code in order to take advantage of the new features. This may be philosophically cleaner, but doesn't have the continuity benefit of the other approach.

      Now if you're Microsoft, which situation do you prefer? The second one, because it fragments the installed base and therefore the influence of the platform you don't control. That gives you an opportunity to sell people on using your technology platform instead, since they'll have to rewrite either way to use new advanced features. But if they don't have to rewrite completely, it makes more economic sense for developers to stick with Javascript.

      Now there may very well be other technical arguments too, but the above is why people are suspicious of Microsoft's arguments. After all, Microsoft knows very well the power of an installed base and the benefits of having control over common technology platforms.

    5. Re:What's this all about? by Kristoph · · Score: 1

      If you define a new type Microsoft will not need to support it and the whole effort will be dead in the water. No one will write completely alternate code for less than 50% of the market. Microsoft, by virtue of its huge marketing and education budget will then be in a much stronger positions to promote a competing solution. In fact, the very presence of an alternative type will given Microsoft the justification to promote an alternative to Javascript.

      On the other hand, if Javascript is 'extended', at least some of those extensions will be used by Javascript libraries which will, no doubt, offer 'workarounds' for features IE does not offer. IE will then still be able to run the code but it will be perceived as less functional which will force Microsoft to implement more Javascript features to stave off further erosion of IE markeshare and, more importantly, offer little or no justification for Microsoft to promote anything else.

      ]{

    6. Re:What's this all about? by asqueella · · Score: 1

      Actually the proposal is to require UAs to only treat the code in and "application/ecmascript;version=4" as ES4. No one suggests treating the code in or in as ES4, that would break the existing pages. See http://wiki.ecmascript.org/doku.php?id=proposals:versioning

      Pratap Lakshman, Microsoft, is on record saying "We do not support or agree to the current ES4 proposal, either in whole or in part. We intend to continue to work with interested TG members to develop a proposal for a more incremental revision of the current specification." (http://weblogs.mozillazine.org/roadmap/archives/2007/10/open_letter_to_chris_wilson.html http://wiki.ecmascript.org/doku.php?id=meetings:minutes_sep_27_2007#unresolved_proposalsthe_sequel)

      There weren't any technical arguments against the proposal from the dissenters as far as I can see, other than it is too large a change from ES3. There was lots of FUD against ES4 on the other hand. This is where the "closing the web" thought comes from; maybe it's not the reason MS is against the proposal, but it's a reasonable explanation of their actions.

    7. Re:What's this all about? by Anonymous+Conrad · · Score: 1

      OK, thanks, I hadn't appreciated that. I hadn't seen the minutes but the Chris Wilson blog linked through the open letter (and TFA) still reads to me as "we need to make sure we stay compatible!" rather than "we don't want this".

  15. Start a New Language by BlowHole666 · · Score: 1

    I would say start a new Language. If they *upgrade* JS how well will it support older browsers. I am not talking IE 5 or anything, but say mobile phone browsers etc? If developers start creating new web pages with the new version of JavaScript are people going to have to upgrade everything? I think it would be better to start a new language so developers can support both. Have a JavaScript page and a XYZNewLanguage page. Sort of like how they have a Flash and a non flash page. So gradually they can phase out JavaScript in replace of a new better language.

    --
    I smoked pot once. But I DID NOT inhale. Will you hire me?
    1. Re:Start a New Language by denis-The-menace · · Score: 1

      Yes, that's what MS is proposing. It's called SilverLight.

      But can anybody trust MS on anything?
      History has proven that you can't trust MS.

      --
      Obama's legacy: (N)othing (S)ecure (A)nywhere and (T)error (S)imulation (A)dministration
    2. Re:Start a New Language by BlowHole666 · · Score: 1

      Yeah...can't trust them. However, that is not a reason to make a stupid mistake and leave countless users unsupported. Do not think of it as MS think of it as company A and company B. One wants to expand on existing and somewhat flawed technology. The other wants to leave that existing technology alone and start over. In the long run which is the better decision?

      Besides saying it is silverlight is step 2000 and we are on step on. Do we want to change JS or make a new language. That is step one. Saying it is SilverLight is just speculation. Microsoft would have to run it past the mac people, the Firefox people, and other companies that have an interest in web development. They can try and push something new but if they do not have the backing of everyone they will get nowhere. It is not 1995 any more.

      --
      I smoked pot once. But I DID NOT inhale. Will you hire me?
  16. Forgetting that it's Microsoft for a minute... by Carcass666 · · Score: 0, Offtopic

    Javascript is an ugly, inconsistent (in and of itself as a language let alone the browser differences) beast, and I don't know of too many people who enjoy dealing with it. If you are going to radically change the functionality, why not start from scratch? Leave "Active"xxx and "Java"xxx out of it.

    Use something that, by nature, has flexible data types, expandability and clarity built into it. My vote would be for Python, but I'm sure both Mozilla and Microsoft would feel differently. In a perfect world, both sides would quit pretending that JavaScript should anything to do with Java and quit pretending that a HTML scripting language should be a portal to the OS.

    1. Re:Forgetting that it's Microsoft for a minute... by Tablizer · · Score: 1

      I think the biggest problem with JavaScript is bad libraries, bad GUI standards, and bad debuggers. If you fix these 3, then it would not feel so rotten.

    2. Re:Forgetting that it's Microsoft for a minute... by photon317 · · Score: 3, Interesting

      I agree with you, except for the Python part. Python is an ill fit for a language that's meant to be embedded in a (X)HTML, because (X)HTML does not honor content whitespace (and neither to a lot of related tools) and Python relies on whitespace for structure.

      I could see trying to standardize a subset of Ruby though. Drop some of the ambiguous (or more difficult to implement parts) and access to operating system services (like fork(), etc), just keep the very basics necessary for pure code and modular OO, give it a well-though-out built-in object model for the DOM (and perhaps some built-in libraries of functionality for things like XML/XSLT, xmlHttpRequest-like stuff, etc), and keep the language compatible back to real Ruby (that is to say, all BrowserRuby code runs on a real Ruby interpreter, but not vice-versa).

      Re-reading the above, it sounds like I'm basically describing a rehash of what the Javascript guys did. The difference would be that (1) We can do a better job today now that the problem domain is better understood, (2) It will actually be compatible (javascript code does not run in a real java environment unfortunately), and (3) It will be based on a much better language (no offense, but Java sucks).

      Normally I advocate Perl over Ruby, but in this context Ruby probably makes more sense (in the very broadest sense, the languages are fairly comparable anyways).

      --
      11*43+456^2
    3. Re:Forgetting that it's Microsoft for a minute... by Anonymous Coward · · Score: 0

      > (2) It will actually be compatible (javascript code does not run in a real java environment unfortunately
      say it with me, javascript has nothing to do with java.

      > (3) It will be based on a much better language (no offense, but Java sucks).
      javascript is not based on java, just poorly named to confuse.

      boab

    4. Re:Forgetting that it's Microsoft for a minute... by Anonymous Coward · · Score: 0

      My vote would be for Python, but I'm sure both Mozilla and Microsoft would feel differently. Have you seen all the work that Brendan put in supporting the people who brought Python to Mozilla as an alternative to Javascript? Brendan did a lot of heavy lifting there. Brendan's goal seemed to be to clean up Mozilla to make it conceivable for any scripting language to climb under the hood. What if Web scripting languages became plugins like flash?

      In a perfect world, both sides would quit pretending that JavaScript should anything to do with Java Neither side pretends that Javascript has anything to do with Java. The name does seem to cause some confusion among those who are unfamiliar with Javascript and/or Java.
    5. Re:Forgetting that it's Microsoft for a minute... by merreborn · · Score: 1

      Javascript is an ugly, inconsistent (in and of itself as a language let alone the browser differences) beast, and I don't know of too many people who enjoy dealing with it


      Some fairly prominent figures in the web development world disagree.
      See: Doug Crockford's "JavaScript:
      The World's Most Misunderstood Programming Language"

      See also this video presentation.
    6. Re:Forgetting that it's Microsoft for a minute... by Doctor+Crumb · · Score: 1

      Apparently everyone you know is writing JS the way they learned on internet forums in 1998. Ecmascript is actually a wonderfully consistent and logical language. Once you get over a fear of prototype-based OOP, and once you quit using global variables, it's awesome. How many other languages let you extend the behaviour of the built-in data types?

      As for browser incompatibilities, you're free to write your own code to abstract that away, or you could use any one of prototype.js, mootools, scriptaculous, yahoo uilibs, dojo, ajaxtk, and so on. Using a library like these is equivalent to using the C++ STL; while you *can* reimplement all of that from scratch, you're much better off using a well-supported and cross-browser library to do it.

      http://www.sitepoint.com/blogs/2006/02/16/javascript-libraries-and-patterns-yahoo-does-ajax/

    7. Re:Forgetting that it's Microsoft for a minute... by ttfkam · · Score: 1

      What exactly is "bad" about JQuery?

      Bad GUI standards? What does that have to do with JavaScript? If you can name a GUI standard within a single language that it better, please let me know. Certainly you don't mean Python's GUI since there's no standard there at all. It's the same story with C, C++, Ruby, Perl, Pascal, and all of the others. A notable exception is Java (aside from the AWT/Swing duplication), and a large number of people hate that. Name something better.

      What's wrong with DOM/CSS, especially when there is nothing about JavaScript itself that's intimately tied with DOM/CSS. There's no reason within the language's constraints that an applications programmer couldn't integrate JavaScript with GTK+ or Qt.

      As for debuggers, have you even used Venkman? Or are you still using alert() calls for your debugging?

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
    8. Re:Forgetting that it's Microsoft for a minute... by Billly+Gates · · Score: 1

      Problem is Microsoft's answer is silverlight which will only run on Windows with IE. It still uses javascript but I do not trust a convicted monopolist to redefine web standards.

      If we are going to redo javascript then it should be opensource by a comittee or group. Unfortunately MS owns so much of the browser marketshare that they can just ignore any standard that is not there own and it will go no where as a result.

    9. Re:Forgetting that it's Microsoft for a minute... by Anonymous Coward · · Score: 0

      "Once you get over a fear of prototype-based OOP"

      Come on, prototype based OOP is so crappy and dead that the new version of the JavaScript standard, JS2 will add a classical way of doing OOP and inheritance to it.

      ECMAScript 4 / JS2 won't suck as much as today's javascript but it has all the old stupid baggage inc.

    10. Re:Forgetting that it's Microsoft for a minute... by maxume · · Score: 1

      Javascript was never intended in any way to have anything to do with Java. Netscape marketing thought it was a good name though.

      --
      Nerd rage is the funniest rage.
    11. Re:Forgetting that it's Microsoft for a minute... by diogenesx · · Score: 3, Informative

      You seem to be under the impression that JavaScript has some relationship to Java. It doesn't.

      From the Wikipedia Javascript page:
      "Despite the name, JavaScript is essentially unrelated to the Java programming language; though both have a common debt to C syntax. The language was renamed from LiveScript in a co-marketing deal between Netscape and Sun in exchange for Netscape bundling Sun's Java runtime with their browser, which was dominant at the time. The key design principles within JavaScript are inherited from the Self programming language."

      Yes, I'm too lazy to find a better source.

    12. Re:Forgetting that it's Microsoft for a minute... by jesser · · Score: 1

      Python is an ill fit for a language that's meant to be embedded in a (X)HTML, because (X)HTML does not honor content whitespace (and neither to a lot of related tools) and Python relies on whitespace for structure.

      (X)HTML does preserve content whitespace. It's only text display that doesn't, depending on the value of the "white-space" CSS property. Even (some) JavaScript would break if the HTML parser replaced all line breaks with spaces.

      --
      The shareholder is always right.
    13. Re:Forgetting that it's Microsoft for a minute... by TheCouchPotatoFamine · · Score: 1

      This whitespace business being bad for webpages is just bull, and it really bothers me to see it here. If you want to compress something, just compress it! If you want to include a large program, put it in it's own file!

      but most of all, tell me difference here:

      class FOO:
              def __init__(self):
                      pass

              def myfunc(self):
                      print "hi there"

      and

      class FOO{
              def __init__(self){
                      pass;
              }

              def myfunc(self){
                        print "hi there";
              }
      }

      the point is that the USE OF WHITESPACE OR BRACES IS 100% INTERCHANGEABLE, BY AN AUTOMATED TRANSLATOR. A simple 20 line one at that.

      open your minds, people!

      --
      CS majors know the time/space tradeoff, but they never get taught the 3rd, crucial, tradeoff of the set: comprehension!
    14. Re:Forgetting that it's Microsoft for a minute... by Tablizer · · Score: 1

      Well, that's basically my point. It's not the language itself, but the tools and libraries often associated with it that give it a bad name.

    15. Re:Forgetting that it's Microsoft for a minute... by photon317 · · Score: 1


      I guess so. I always assumed they named it javascript because they were trying to be loosely java-like in the syntax of their scripting language (not that they succeeded in doing so anyways).

      --
      11*43+456^2
  17. Re:Flash-bashing equivalent by Kandenshi · · Score: 3, Informative

    I know it's somewhat indicative of a tinfoil hat, but that's basically what I and many others do, using NoScript.
    If I trust the website enough to run javascript, then I add it to my whitelist. I don't see the need for javascript on most of the pages I go to, and would rather not have my computer running unnecessary code. Seems to my totally uneducated POV that it'd slow my computer down if I have 20 tabs each running javascript stuff, when only 2 of them ACTUALLY need it. My RAM is precious to me. =(

  18. Wishes by Tarlus · · Score: 2, Funny

    I've actually had dreams about all the major browsers coming to an agreement about consistent standards with HTML, CSS and Javascript. I have actually had dreams about designing an elaborate webpage layout for Firefox and then having it turn out perfect when it came time to load it in IE. But then I woke up and went about another busy day of using tables and NOT divs for webpage layouts...

    *sigh*

    --
    /* No Comment */
    1. Re:Wishes by jddj · · Score: 2

      If you're using for non-tabular data, you're part of the crowd perpetuating the problem, not driving the solution.

      Wanna do more than dream? Leave <tables> behind. Unless you're displaying tabular data, of course.

    2. Re:Wishes by Tarlus · · Score: 2, Informative

      Why? Is there a non-elitist reason to not use tables for a layout? I use tables because that's the one thing that'll work consistently between all the major browsers without having to spend several extra hours messing with the divs and underlying.

      --
      /* No Comment */
    3. Re:Wishes by sosuke · · Score: 1

      Ditch tables for layout, there is no layout that exists that can be created in tables that cannot be created in divs and css. If your using tables for layout and you won't accept divs then you will be left behind. We have not accepted a single applicant that couldn't show knowledge of div layouts without inline styles or absolute positioning and our sites look perfect on PC/Mac on all major browsers.

      Learn to use divs and css, you won't look back with nostalgia and you will be a better front-end developer for it.

    4. Re:Wishes by (H)elix1 · · Score: 1

      Is there a non-elitist reason to not use tables for a layout?

      Tis the bloody 508 compliance that burns you... in the US, it is a (rarely enforced) law. It will take more lawsuits before that 'pain' gets cost justified, but after Target and a few others, it might happen. Better to code it up correctly now than when someone without a monitor sues.

    5. Re:Wishes by Anonymous Coward · · Score: 0

      there is no layout that exists that can be created in tables that cannot be created in divs and css.

      Except, of course, for tabular data that one does not wish to look like utter and complete shit (as opposed to just complete shit in a table). Or when you need to nest structures, and some genius decided that the box model should be specified in such a way that it's impossible to guess how large of a box you need around the outer layer since you can only set the inner sizes of the inner boxes.

    6. Re:Wishes by Psychor · · Score: 1

      So that you can have endless fun dealing with the CSS layout bugs that plague many browsers, but especially older versions of IE, and coming up with dirty hacks around them which you wouldn't have had to do if you'd used tables in the first place. I particularly like the tiny 2 pixel gaps that magically appear between divs under certain circumstances older IE versions and are next to impossible to get rid of. The problem with current versions of CSS is that on 3/4 of web pages it is used mainly to facilitate a column layout, which is something it wasn't originally designed to do, and is very bad at. Things like making several columns grow to equal lengths, or appear to do so, require almost endless trickery in CSS, especially if consistant display between different browsers is required, which it generally is.

    7. Re:Wishes by Anonymous Coward · · Score: 0

      If that only happens in your dreams you've got to just get better at HTML and CSS. Once you learn the few remaining IE quirks and you learn how div based layouts work the transition between firefox and IE is relatively pain free. At this point I usually end up with a couple of rules in an IE6 and under conditional comment to fix the peek-a-boo bug and few comments to solve IE whitespace bugs and that is about it. Sure its a challenge at first, but after cutting a half dozen div based designs you learn what to avoid and it becomes second nature.

    8. Re:Wishes by sosuke · · Score: 1

      Tabular data is not layout, trying to arrange an excel style spreadsheets in anything but tables it silly. You don't set the width or height of the outer layer but give it some padding to set your inner layer inside it visually unless of course you have to float the outer element in which case you at least need a width. Your div layout for each element should not have to worry about its parent element and should look and act properly on its own which in itself is the beauty of doing the div css style layouts.

      If you do need any help or have a question how something might be done with minimal to no browser hacks just let me know and I will lend you a hand!

    9. Re:Wishes by Anonymous Coward · · Score: 0

      What possible layout would need tables instead of divs?

    10. Re:Wishes by Anonymous Coward · · Score: 0

      If you use tables, quit your job and give your employer back whatever money he paid you. Just because you can't learn to use divs/positioning and a doctype doesn't mean anything is broken.

    11. Re:Wishes by wraithgar · · Score: 1

      What about the rest of us who don't work for a Federal company?

    12. Re:Wishes by WebmasterNeal · · Score: 1

      It takes very little work to use a css div layout in ie, the same way as firefox. Actually with ie 7 it's pretty much the same.

      --
      "During My Service In The United States Congress, I Took The Initiative In Creating The Internet." -Al Gore
    13. Re:Wishes by Anonymous Coward · · Score: 0

      Begone elitist, nobody wants you here.

    14. Re:Wishes by jddj · · Score: 4, Insightful

      Is there a non-elitist reason to not use tables for a layout?

      There are many. Let's try a few:

      • Semantic, linear structure of the page. When one forces a layout into a table, almost invariably the "reading order" of the page gets fouled up. Text content that probably should be readable in top-to-bottom order gets split up into left-to-right cells (in page-load order). This plays havoc with the ability to repurpose the page for mobile devices, pdfs and screen readers, and (perhaps more importantly to the folks signing the checks) makes the page harder for search engines to understand, potentially lowering your page rank. By creating a page that makes semantic sense and using <div> tags and other parts of HTML properly (parts like <h1>, <p>, <ul>, etc.) you help convey to the search engine what the page is about.
      • Ease of updating. When you need to change the layout of a page created in tables, you have to reconfigure all the tabled content, moving some from cell to cell, changing colspans, etc. If instead you've made semantic sense of the content, you can move the content around the page with CSS, never having to touch the HTML. You can even do things like change lists of links from vertical nav trees to horizontal tabs without changes to HTML.
      • Ease of creating printable pages. When you lay out in tables, you may be able to "hide" display of the tables in the print style sheet, but browser problems may push content around the page anyway (have been struggling with this in a poorly-designed page this week). With tableless layout, it's easy to hide the elements on the page you don't want to see in the printout, set size and margins for the elements you do, then do a window.print()
      • Separation of content from presentation. When tables are in use, typically related content is plunked into adjacent cells (image slicing anyone?). When this happens, the presentation (layout) is tangled up with the content. This is difficult to maintain. The developer and the designer have to touch the same page for different reasons. When the page has to be edited for layout, the designer has to know enough about the table code to do things like remove or insert colspans, when in fact there are no columns of tabular data.
      • You get to break out of the grid and use flexible (even liquid) layout. You can move things around, put 'em in front of or in back of other items, never having to worry about running out of cells or keeping colspans straight.
      • When all else fails in trying to make a table layout do something it was never intended to do, designers make "pictures of type" so the layout observes their wishes. This is a huge mistake for searchability and accessibility. The search engines can't read the pictures any better than the blind can.
      • Table-based layouts typically get really, really screwed up when the user resizes the fonts in her browser. Trust me: I'm doing this all the time 'cause I don't want to bother with reading glasses.
      • Layout is not tabular data. It's just not. Tables work great for tabular data, and they have many features to render spreadsheet-like pages with clarity.
      • It's a misuse of a feature of the language. You might think this is elitist, but would you also imply that the suggestion that someone stop using a Crescent wrench as a hammer is elitist? Or might you instead think: "there's a better tool for that job - one that's designed to do it well".
      • It's the right thing to do for the disabled. Not bothering to lay out the page well so the visually impaired can read it could be interpreted as elitism on the part of the sighted.

      Is that good for a starter? I'm about out of time to spend on this...

      I don't think that browser support for tableless layout is perfect. It's awful in older browsers, but getting better all the time.

      In any case, it's the browser's job to render the standard properly, not yours to break the code for the browser. I find the middle-ground is to keep the layout pretty basic to get broadest browser support, and tolerate browser differences. I'd never promise pixel-for-pixel cross-browser support. HTML isn't designed to do that.

    15. Re:Wishes by websensei · · Score: 1

      Mod parent up

      This is the best summary of the reasons to avoid table-based layouts I've ever seen, nice job jddj.

      --

      La via sola al paradiso incommincia nel inferno
    16. Re:Wishes by jddj · · Score: 1

      Kind words - thanks.

      Now that I've set up the plan, you'll execute on it and have the web free of table-based layout by close-of-business Monday, right? ;)

    17. Re:Wishes by Anonymous Coward · · Score: 0

      All you write is good and well, except for one thing:

      CSS sucks. Big time.

    18. Re:Wishes by Tarlus · · Score: 1

      Funny you say that, because yeah--- I did have one by the end of Monday. =)
      I hope my use of the word "elitist" didn't come across as insulting or rude. Most people on /. in the past have just scoffed others off as incompetent losers for simple things like not knowing that there's a better way to do something in any form of code. That's where I get the term "elitist." Thanks for the large post though, it was quite informative. I'm by no means a professional web designer, but I do make pages for projects and things every now and then. I just never really saw divs as nothing more than just a different, more time-consuming mean to the same end. But, I'm giving them more patience. The only thing that drives me crazy is that if you want all columns to match the same height, you're pretty much required to fabricate a fix. I got a javascript to do it, and while I'm not a fan of it, it gets the job done.
      Thanks for the helpful information!

      --
      /* No Comment */
    19. Re:Wishes by jddj · · Score: 1

      Glad to inform.

      Didn't really take personal offense at the "elitist" term - I've been in enough fora where there's more heat than light that I recognize the attitude you're describing.

      Where I'd suggest you go with the situation if you want to move forward is to stop thinking about <div> tags as layout tools and instead think of them as containers for a block of content. Once you get there, you're on the way to thinking about what's IN the containers and what semantic sense they make on the page. When you think about layout, think about moving the containers around with CSS, not using the containers for the layout directly. The CSS should hold the layout details.

      I'd warn off delivering necessary functionality with Javascript as well. Here's a particularly ugly case from my office:

      The corporate web team decide that they'll write the <title> tag at page-load time with javascript. The JSP that creates the page writes what the title should be into the javascript statement (yes, this is unbelievably ugly to start, but it gets worse). By default, the page template has a <title> that says something like "Product Detail Page". At page-load time, the browser overwrites this with whatever the JSP has written into the page.

      The problem here is that our Google Search Appliance doesn't do javascript as it spiders the page, and reads the actual <title> of the page. So now I have 100 or so products all named "Product Detail Page" when they show up in search results. Beautiful.

      And FWIW, I'm not a professional web designer either. I instead focus on connecting the business and the technical people in our company with web solutions that will work for them. About half the time, I'm a translator at best. But I have to be quite conversant with the technology, and that means for me that I get my hands dirty with it, do self-assignments, do code repair and critique, try and stamp out problems in legacy sites. Unfortunately, it also means failing sometimes when the mountain is too big to move. I'm currently trying to get changes made to an Intranet which serves thousands of employees that's completely polluted with badly-done tabled layout. (honestly, well-done tabled layout would be an improvement...). Can't boil the ocean, y'know?

    20. Re:Wishes by bucky0 · · Score: 1

      If there was a way to do a 3 column layout without having it be a gigantic kludge/be brittle, I'd do it. I avoid tables for everything else, but I can't get a consistent way to make 3 columns.

      --

      -Bucky
    21. Re:Wishes by jddj · · Score: 1

      You could always use "the Google" to find some...

      This one appears to behave nicely, is liquid, and while it DOES use the IE 5 stylesheet hack, that offends my sensibilities less than the overbroad hack that is table-based layout.

      Here is another. There are others.

    22. Re:Wishes by bucky0 · · Score: 1

      Thanks, I'm not a dumbass, I've actually looked into this before. I used one of those techniques on another webpage. The problem is that they are kludgy and you have to be careful about what data you put into the divs, otherwise the float tags get wonky.

      --

      -Bucky
  19. I love designing to multiple standards by PIPBoy3000 · · Score: 1

    The catch is that in order to take advantage of the new language features, developers will potentially have to do twice as much work. Already JavaScript's event model varies between browsers. In my ideal world there'd be a single language and all modern browsers would support it fully.

    1. Re:I love designing to multiple standards by kc2keo · · Score: 1

      That is my ideal world too. When designing my web site I had to make a difficult decision. That was to put hacks into my code to support browsers such as IE6 while also supporting Mozilla Firefox or to just go all approved standards way. I decided to avoid chunking my code with hacks and support Firefox and the standards. I figured that IE6's user base will dwindle as they upgrade to IE7 eventually. Good thing is that IE7 supports my site much better. Not fully though. Also, I really wish M$ would just stop supporting IE and just use Firefox... lol what a wet dream... Or better yet Give up on Windows!

  20. brand new language by l3v1 · · Score: 2, Interesting

    Wanting to create a new language instead of supporting an upgraded JavaScript shows one thing, how bad the IE codebase for JavaScript handling might be. This majorly smells like those situations where after a long update and extension period a code becomes so hard to handle that it's better to drop the whole thing and start a rewrite from scratch. Of course, if you argue for a new language, this probbably isn't such a big issue, since you'd need to write a new handler code for that anyway, and nobody will know what your reasons were.
    Of course this is all just speculation. Wouldn't be the first time I'd be wrong, still, the smell is really strong.

    --
    I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
    1. Re:brand new language by zoips · · Score: 1

      The real kicker here is that JScript.NET is an implementation of an early ECMAScript4 draft. I've been wondering for the longest time why Microsoft just doesn't give a little love to JScript.NET, make sure all of the edge cases for backwards compatibility work with ECMAScript3 versions, update it to make sure it complies with the current ECMAScript4 draft, and just delegate to the .NET platform for scripting? At this point it's hard to avoid not having .NET on a Windows machine, so what the hell is the holdup? I mean, hell, if they did this they'd open up using C#, managed C++, VB.NET (eww...), and J# as scripting languages as well.

      Haha, CAPTCHA is shames.

  21. Re:To me, this seems vaguely pointless for browser by Metaphorically · · Score: 4, Insightful

    Well that's what GWT, OpenLazlo et al do already anyway. The thing is you can't get all the features of the underlying language that way. The key is to making the source language so much better than Javascript that my complaint sounds like saying "the problem with C++ is that you can't get all the features of assembly." (And I mean within the source language, not with things like asm blocks.)

    Personally I like Javascript as a language and think it's a shame to see roadblocks to it's development happen because of the nature of the platform it usually runs on. I'd like to see something like GWT where the source language is Javascript instead of Java - that is a Javascript to Javascript compiler where you could add whatever local features you need and have the compiler throw away the fluff and stick in cross-browser compatible shims.

    --
    more of the same on Twitter.
  22. go ahead and do that by Anonymous Coward · · Score: 0

    Go ahead and try just random surfing with JS disabled, it is horrid. Half the sites out there now are mostly unusable with JS turned off. I keep trying, and keep having to go back and turn it back on. It just *sucks*. I wouldn't mind if the so called web "masters" would provide a more basic implementation of their sites as an option, but most don't. Hell, they can't even be assed enough to provide alt image tags. And those all flash sites, what a serious PITA. Now some sites offer options and it's great, want an example, how NASA runs their domain, they give you three options, full blinkenlight scripted flashing pulsating bloat down to basic text only. That's how it should be. Trying being on dialup with perhaps an older machine and surfing, or say for the folks with accessibility issues, without the option for low res non scripted content, it walls off half the net and it is getting worse daily, and that is leaving out all the ongoing horrid javascript exploits that keep occurring. Frankly, we won't ever have anything close to a more secure web as long as these "masters" insist on using active content. Even slashdot here doesn't quite "get it", turn off JS and you lose the ability to reply to the main thread. You can reply to replies, but not to the main article.

    1. Re:go ahead and do that by Anonymous Coward · · Score: 0

      Slashdot is fixed now. There is a 'reply' link for the story in the bottom left. I think Slashdot works much better with javascript turned off these days. It gives me the whole comment thread on a single page, which makes it easy to search through.

  23. Re:Flash-bashing equivalent by snoyberg · · Score: 1

    Huh, I hadn't realized that NoScript has a whitelist feature. That sounds like a good approach actually. Obviously I want Javascript working on a place like GMail, but I don't need accordian boxes everywhere, much less the insidious popups. Thanks!

    --
    Thank God for evolution.
  24. Unfortunately, Microsoft has a point by Animats · · Score: 3, Insightful

    The trouble is, Microsoft has a point. Original HTML, up to, say HTML 3.1, was limited but a reasonable design. Most of the attempts to extend past that point have been disappointing. CSS is a collection of attributes in search of an architecture. Page layout with "float" and "clear" is too limited and doesn't work well. (The "three column problem" is well known, and workarounds using layers or absolute positioning often result in text on top of other text.) Javascript is a mediocre language. (Could have been worse; see TCL.) That's the current mess.

    Papering over the problem with a layer of "toolkits" just resulted in a proliferation of incompatible toolkit layers. That wasn't the solution.

    But Microsoft will try to "fix" the problem with a closed, ambiguous system that requires frequent updates. That's what they do with everything else.

    I don't see a good way out of this. Who can provide leadership? Adobe? They can't even make Dreamweaver work right any more.

    1. Re:Unfortunately, Microsoft has a point by Trillan · · Score: 1

      Microsoft has a good point, but I don't think that's it.

      Microsoft's point seems to be that something new should be given a new name: "so we could continue supporting existing users as well as freeing the new language from constraints." That's a pretty good argument. In fact, I'd say it's an awesome argument.

      Now, granted, this is probably being suggested so Microsoft can say "We support JavaScript/ECMAScript, but not XyzScript." Bah. But the point about naming incompatible things differently (or, inversely, keeping things with the same name compatible) is a pretty sound one.

    2. Re:Unfortunately, Microsoft has a point by CodeBuster · · Score: 1

      I actually think that CSS was the right direction to go with the future of layout in HTML, even in hindsight. It could be better yes, but the core functionality is there and generally likeable. The few known problems should be addressed within the context of CSS instead of ditching CSS and HTML and starting over. The XHTML push is also a good idea, brings a rigor and formality that was lacking in older versions of HTML. The way out of this is to continue improving the existing standards slowly, logically, and methodically and only ditching them, finally, when we have a *very* good reason to do so. The approaches are pretty sound, it is mostly a few quirks in the languages and lots of quirks in the browser rendering engines that have contributed to the perception that they system, as it stands today, is completely broken when in fact it is actually pretty good, all things considered. Could it be better? Yes, but the way to get there is to improve and build on top of existing standards, not ditch everything and start over. The layered approach has been shown time and again through extensive experience to be the right approach in network design, now we just have to get the details right.

    3. Re: Unfortunately, Microsoft has a point by Dolda2000 · · Score: 3, Interesting

      I don't see a good way out of this. Who can provide leadership? I'm not usually a proponent of Java (quite the opposite, rather), but in this particular case, I cannot see why people would even think twice about adopting Java as the solution to these problems.

      We already have a hypertext web that works very well with XHTML and CSS (not that they don't have their flaws, as you rightly point out, but they certainly work). What people are looking for with AJAX and Silverlight and what not is ways of delivering programs over the Internet in a secure manner, and Java already has that problem solved with both applets and Java Web Start. Java is also both an open specification and open source and it has a number of interpreters for almost any platform you can beg for, it has been around for far over a decade, and is very mature by now.

      I don't see why people are not using Java. What's the problem? There are the obvious problems with Java being a horrible language to work in, but even so, it's probably still better than AJAX, Silverlight and Flash.

    4. Re:Unfortunately, Microsoft has a point by bcrowell · · Score: 1

      I agree with you that MS has a point, but I actually think the present incarnation of JS is quite a nice language. It's elegant how they made it possible to do OO techniques using prototypes, with a minimum of cruft. Unfortunately TFA doesn't have any information about the actual changes, but IIRC the planned changes have to do with making it more like java, with classes rather than prototypes. Well, I don't see any evidence that the current version of JS is broken and needs to be fixed. I think the problem, if there is one, is that a lot of people go to college these days and learn that OO programming, as embodied in Java, is the One True Way. It's true that if you want to write really huge js applications, you have to adopt a certain level of discipline, but it's no big deal; the O'Reilly rhino book, for example, shows techniques for avoiding the pollution of namespaces, and you just have to be disciplined enough to use those techniques. Perl is going through similar conniptions with the perl 5->perl 6 transition, but at least in the case of perl there's some good justification for a major redesign, since OO really is a hassle in perl 5.

    5. Re:Unfortunately, Microsoft has a point by secPM_MS · · Score: 1
      Microsoft has a good point here. javascript was designed for a much more trusting world. The combination of script enabled browsers (javascript, flash, etc) with compromised servers is lethal. Web 2.0 is all but identical to cross site scripting and cross site request forgery as a design feature. COntinuing to shove new features into a broken model is dooming us to more of the same. IMHO, leave javascript alone and start working on a sucessor, and make sure that security is a high priority from the beginning.

      Silverlight seems to be a reasonable approach. Microsoft has released it for both Linux and OSX as well as Windows, so it has a broad base (at least as broad as Adobe's local gadget technology). Silverlight appears to show reasonable security properties, I would assume as a effect of Microsoft's SDL process. Microsoft seems to be at least as open as Adobe in this arena.

      I have a different question to ask? Why do so many web sites requite scripting in the first place? It is one thing to provided reduced functionality if the client does not support scripting (by default I do not run javascript, java, Flash, etc), but why require it? I don't care about the neat media and am quite willing skip it and conserve my bandwidth.

    6. Re:Unfortunately, Microsoft has a point by huckamania · · Score: 1

      JavaScript should look at its long lost cousin Java to figure out why renaming a new thing is probably a good idea. Anybody want a Java in a Nutshell book for Java 1.0? How about 1.1?

      I quit using Java cause they kept changing everything right after I bought a new book. I picked it up again when J2ME came out and actually enjoyed it quite a bit. Wrote a nice little cell phone app in my spare time (you can download it at CNet by searching for BabyCell).

    7. Re:Unfortunately, Microsoft has a point by J-1000 · · Score: 1

      CSS is a collection of attributes in search of an architecture. Page layout with "float" and "clear" is too limited and doesn't work well. (The "three column problem" is well known, and workarounds using layers or absolute positioning often result in text on top of other text.)
      Now wait a second. What exactly are you trying to do that can't be arranged using floats, or other CSS for that matter? We wouldn't have any "three column problems" if every browser would just adhere to the standard. That's a browser problem, not a CSS problem.
    8. Re: Unfortunately, Microsoft has a point by Tablizer · · Score: 1

      Java certainly has more maturity than any competitor will have any time soon. However, it's GUI engines are proprietary, aren't they? Thus, we should look at Flash also.

    9. Re:Unfortunately, Microsoft has a point by mattpalmer1086 · · Score: 1

      I have a different question to ask? Why do so many web sites requite scripting in the first place? It is one thing to provided reduced functionality if the client does not support scripting (by default I do not run javascript, java, Flash, etc), but why require it? I don't care about the neat media and am quite willing skip it and conserve my bandwidth.

      Exactly. I recently tried to download some open source software from Microsoft's CodePlex, and found that you can't download the source files without javascript enabled! I sent them an email about it, asking if they could make basic stuff just work for the paranoid among us, but by all means to use it to make a better user experience if its enabled.

      They got back to me fairly soon, thanking me for the suggestion, and suggesting I re-submit it as a feature request. I wasn't quite sure what to make of that - that was the feature request!

    10. Re:Unfortunately, Microsoft has a point by Anonymous Coward · · Score: 0

      I don't see a good way out of this.
      How about bad way out of it? I'm thinking that whatever WizBang language is proposed be:
      1. Submitted to ISO and IETF for standards approval by a small, smart committee that has only 6 months to come out with a specification that is small, orthogonal and functional.
      2. A completely free patent-unencumbered standards-compliant reference implementation of the language be provided to the public free of charge. Let MS implement their private copy in CLR inside IE 9 that can run faster but provide the slow compliant implementation in JavaScript for AnyBrowser that can run ECMAScript.
      3. Require any implementation to run on the reference release and not make use of hidden hooks into deeper, hidden APIs that were not part of the public release.

      For too long I've suffered watching the agony of what could have been with SVG(:

    11. Re: Unfortunately, Microsoft has a point by minniger · · Score: 1

      Parts still are. But they plan on fixing this as soon as they can.

      Still point about using java makes a lot of sense regardless. You don't NEED awt/swing support to replace javascript. Just a context that the code in the page can run in that includes resources like the DOM, connection to source server, cookies repose, data cache, etc. Throw in the built in sandboxing and it's a big step forward.

      Non trivial project, but then so is redoing javascript.

    12. Re:Unfortunately, Microsoft has a point by TheNetAvenger · · Score: 1

      But Microsoft will try to "fix" the problem with a closed, ambiguous system that requires frequent updates. That's what they do with everything else.


      Even Silverlight on Linux is OSS, how is this MS closing everything down?

      C# is an open standard out of MS's hand of control and even .NET is running well in OSS on *nix.

      This appears to have more to do with 'not' breaking the current technologies, as that is what would have to happen to progress javascript forward in the direction mozilla and others want to take it.

      It truly would be more efficient to create an 'extended' language so that current javascript doesn't get foobar in the process, even if they call the new language javascript++ and build from there to provide the new featuers.

      Why is the OSS world supporting a major revision to javascript that would kill its current compatibility? Doesn't seem too bright, even if MS is the one arguing logically on this.

    13. Re:Unfortunately, Microsoft has a point by Anonymous Coward · · Score: 0

      stop blaming browser issues (mainly ie issues) on css and html, bill.

    14. Re:Unfortunately, Microsoft has a point by schnablebg · · Score: 1

      I think Adobe *will* be providing the leadership here. In fact, they already are, with Flex and Flash. Flash player is installed on 90%+ of all browsers.

      JavaScript serves a purpose, and had led to some cool web apps. But the REALLY cool new stuff is being done on the Flex/Flash platform. See Google Street View, Google Finance, Gliffy... JS can only take interactivity and so far. The new breed of web apps will finally fulfill what Java promised 10 years ago. But they won't be Java; they will be Flex or Silverlight (sorry, Sun, you were ahead of your time). Right now, Adobe is winning this battle. This is why MS is pushing Silverlight so hard.

      This doesn't make ECMAScript irrelevant though--Flex is based on it. But I don't see ECMA's role in the browser expanding much beyond the current generation of web apps and providing the glue between Flex/Silverlight and the HTML.

    15. Re:Unfortunately, Microsoft has a point by mabhatter654 · · Score: 1

      Both silverlight and C# are PATENT encumbered! Even though stupid people are trying to implement them in OSS, they will never be free. Also, only the core is free, the actual useful bits are standard proprietary.

      That said, upgrading Javascript would be a good thing. OSS breaks compatibility all the time to push old code into compliance. The old version would stick around just like it is, but there's a lot of dangerous stuff that needs removed or fixed. Better to fix the problems even if it means breakage, than to simply move the cheese to a new name and keep everybody following the same bad habits.

      Frankly, the standards compliant companies need to get together with W3C and pull the "big one". HTML5 (XHTML5) CSS3, ES4... added to Firefox 3 and Safari/KHTML in the next 12-18 months the web could be completely reinvented. It's time to "sandbox" the old web to archive and split web pages from web applications that have developed. Anything older than HTML5/CSS3/ES4 should go by the wayside, the web needs a big push forward... it's better that OSS gets there first no matter how much better Microsoft's ideas may be, if OSS and open standards aren't FIRST, then they'll always be second best.

    16. Re:Unfortunately, Microsoft has a point by Anonymous Coward · · Score: 0

      My guess after looking at the EC4 spec (and playing around with Aptana) is that people are starting to see the value of a language being supportable by a good IDE. At the moment, most HTML/CSS/JavaScript code being written isn't even valid. This hurts efforts to make productive IDEs, standardize widget sets, make static code verifiers, and forces browser vendors to make a mess of themselves in an attempt to handle buggy input.

      I'm all for giving the language a different name in the script tag, but the sorts of fixes in EC4 are the kinds of things that are necessary to keep people from developing in a proprietary product because the IDE yields order of magnitude productivity increases.

    17. Re: Unfortunately, Microsoft has a point by Blakey+Rat · · Score: 1

      When's the last time you saw a Java applet on a serious commercial website?

      Java's dead on the web. Sun had a chance for awhile there, but Flash pretty much killed them off. That said, I think Java is in many ways preferable to AJAX for building web apps, I just don't see it happening in this current environment. That the Java runtime on Windows is a really crummy piece of software doesn't help.

    18. Re:Unfortunately, Microsoft has a point by Blakey+Rat · · Score: 1

      I agree with you that problems should be worked out in the framework of CSS, but you gotta wonder about people who design a layout language that doesn't even support COLUMNS without weird hacks. What kind of content was it intended to style? I mean, did the CSS standards committee never open a newspaper once in their life? The fact that it took until 3.0 to get columns, and it'll take another 5 years for all browsers to support it, it's just crazy.

    19. Re:Unfortunately, Microsoft has a point by Blakey+Rat · · Score: 1

      I have a different question to ask? Why do so many web sites requite scripting in the first place? It is one thing to provided reduced functionality if the client does not support scripting (by default I do not run javascript, java, Flash, etc), but why require it? I don't care about the neat media and am quite willing skip it and conserve my bandwidth.

      You represent about 0.1% of the web by keeping JS and Flash turned off. You can't really expect websites to cater to that 0.1% with the other 99.9% can work with their page just fine-- and so can you by checking a box in an option dialog.

    20. Re:Unfortunately, Microsoft has a point by secPM_MS · · Score: 1

      It is not that simple, although perhaps I should have raised the point earlier. The move to rich media is fine for people with good vision and hearing. What about people who have difficulties with either or both. It is relatively straightforward to move from text and plain HTML to assistive technologies. At some point, commercial web usage in the US will fall under the disabilities act. At that point the webmasters are going to have to make explicit support for plain media.

    21. Re: Unfortunately, Microsoft has a point by Tablizer · · Score: 1

      But one of the things that Java has a leg-up over the competitors is a reasonably mature GUI engine for it. But it is proprietary. I think it would take OSS at least 3 years to get stable and compatible equivalent to the proprietary one. And if we're gonna consider proprietary, then why not also consider Flash?

    22. Re:Unfortunately, Microsoft has a point by Lotunggim+Ginsawat · · Score: 1

      C# is an ISO standard, so your claim that it is PATENT encumbered is FUD to the max!

    23. Re: Unfortunately, Microsoft has a point by minniger · · Score: 1

      But there's no reason to use java as a scripting lang that you would need to have any awt/swing services. The dom and browser already do that for java script. The browsers could just treat java the same...

      Heck...Even better would be something like groovy....

    24. Re:Unfortunately, Microsoft has a point by Zphbeeblbrox · · Score: 1

      Seriously folks the problem isn't javascript. the problem is HTML and CSS. We don't need a new language we need a new way of making widgets in the webpage. Javascript can power that just as well as anything else. I fail to see the problem here. Heck half of mozilla is written in javascript so we know it can more. The limiting factor isn't javascript the language it's the DOM and CSS. Why are we talking about upgrading a language when what we really want are workable cross-platform implementations of X-Forms and SVG with and an API to them that isn't insane?

      --
      If you see spelling or grammatical errors don't blame me. I tried to preview but IE here at work borked the CSS
    25. Re:Unfortunately, Microsoft has a point by man_of_mr_e · · Score: 1

      Both silverlight and C# are PATENT encumbered!

      Really? Which Patents?

      You don't know?

      Seriously? How do you make that statement if you don't know?

      All of MS's patents are available as public infomration on the USPTO website. Why has nobody been able to identify these supposed patent encumbrances?

    26. Re:Unfortunately, Microsoft has a point by mabhatter654 · · Score: 1

      M$ has even claimed it's patent encumbered... that was the leverage with the Novell deal, they just didn't say it like that. Also, even though the LANGUAGE C# may not have patents, all of the interesting stuff you can do to interface with windows or do graphics, etc. is all stuff that has to be reverse engineered... i.e. it probably has patents tied to windows OS that Microsoft will pull out if anybody gets too big.

      I'm a big fan of competition anyway. It's good to have to fight for things.. that's competition. The patent issue makes the idea of fighting better than trying to agree with them and being stabbed in the back. I wish more of the OSS devs would get that through their heads... don't try to agree with them... duke it out!

    27. Re:Unfortunately, Microsoft has a point by Lotunggim+Ginsawat · · Score: 1

      The thing that is patent-encumbered is the .NET thing, not the language. If C# has problems with submarine patents, it will not be approved as an ISO standard.

    28. Re: Unfortunately, Microsoft has a point by justinlindh · · Score: 1

      Maybe, but a LOT of work would have to be done to make this reasonable. Different JRE versions would be a huge problem (deprecations, idiosyncratic differences in UI rendering), so a JRE would need to be packaged with the browsers and used by default to ensure compatibility. The JRE also takes a significant amount of time to load in the browser (much longer than Flash/JavaScript engine), and has a significant memory footprint. JavaScript also has great DOM parsing and direct access to the DOM, whereas extra libraries are required for Java to do the same. Java as a solution to this problem just isn't the most efficient and reasonable solution without a LOT of work.

      I'm all for adopting pure Java syntax into JavaScript, but otherwise, this is a terrible idea IMHO, and I would argue that AJAX/Flash are better solutions as-is. If Java were the correct answer, it's likely that AJAX/Flash wouldn't even exist since they're all solutions to the same problems. I've actually recently converted a commercial web application from a Java client to an AJAX implementation due to the reasons listed above.

    29. Re:Unfortunately, Microsoft has a point by TheNetAvenger · · Score: 1

      Both silverlight and C# are PATENT encumbered! Even though stupid people are trying to implement them in OSS, they will never be free. Also, only the core is free, the actual useful bits are standard proprietary.


      This is partially correct, but is putting emphasis on MS's only.

      C# itself is not patent encombered, but how it works on Windows ties into how Windows displays user elements, which creates what you claim.

      C# can be implemented with no ties to Windows and be MS free of patents and is an ISO controlled language standard.

      Also, what about other patent encoumbered languages and sandboxes, like Java for example, that people have used even when it was tightly closed?

      Even now that Java keeps creeping to OSS, it still has patents encumbering the basic implementation and syntax of the language itself. Sun even fought to take control back from ISO around 1997.

      Yet OSS doters trust Java more? Strange, very strange.

  25. But the thing doesn't really work. by cyfer2000 · · Score: 1

    Browser compatibility of those javascript(s) and jscript is a nightmare.

    --
    There is a spark in every single flame bait point.
  26. butterfly effect by digitaldc · · Score: 1

    Wilson wrote that the proposed new standard may result in complications and incompatibilities with existing Web sites and applications.

    So, it works the same as always then? Everything seems normal with the new standard.

    What I want to see is a giant red T-Rex fighting a massive four-colour Butterfly...with the T-Rex stomping the Butterfly, completely altering the future.

    --
    He who knows best knows how little he knows. - Thomas Jefferson
  27. Re:Flash-bashing equivalent by betterunixthanunix · · Score: 1

    You wanted to be funny, but I do agree with you somewhat. Javascript adds unnecessary size to a lot of web pages. Why, for example, is it necessary to use javascript to cause the browser to follow a link? Or to refresh a page? I haven't seen many particularly novel web sites that actually justify the amount of javascript that is out there. I should be able to browse the web on a 9.6K connection without waiting 5 minutes for 100kb of javascript to load for less than 10kb of content.

    --
    Palm trees and 8
  28. lets call it by oliverthered · · Score: 1

    Lets call it C# or linq instead of java and xsl2 just so we can force our own standard upon everyone.

    --
    thank God the internet isn't a human right.
  29. I agree with MS by ditoa · · Score: 1

    Microsoft are right IMHO, JavaScript is a horrible language in many ways which are well known. I would much rather see a more modern language designed from scratch designed for the future of the web rather than hack in new features to JavaScript beyond the scope it was originally designed for. We also need better development environments for JavaScript as debugging it can be a royal PITA, while Firefox + extensions help it isn't perfect, a proper debugger would be great :)

    1. Re:I agree with MS by Anonymous Coward · · Score: 1, Insightful

      No, JavaScript is NOT a horrible language. It's a fairly standard dynamically typed language, with prototype-based OO, and a small set of simple, flexible datatypes. It's consistent. It's logical. As long as you're not after C++, it makes sense, especially for web site scripting.

      It gets better if you start using the language features supported by Firefox, but not IE. Things like E4X, for example, make dealing with XML data trivial.

      There are basically three problems with JavaScript as-is.

      First, people (you included, apparently) seem to think of JavaScript in the way it was used back in '98 or so - basically no better than BASIC with C-style syntax.

      Second, Internet Explorer's DOM. It's inconsistent, buggy, and makes things unnecessarily difficult.

      Finally, Internet Explorer's implementation of JScript. Which is a pile of junk, almost impossible to debug, and has an irritating tendancy to crash the entire browser if you use complex scripts.

      Obviously, upgrading IE's support for JavaScript would fix the latter, but there's no chance of fixing the second, and the former is simply a matter of perception (helped by IE, which fights you if you try to do anything useful with JavaScript).

      Besides, Microsoft don't care about breaking the web - they care about breaking all the poorly written intranet apps (including their own, such as OWA) which rely on bugs in IE to work.

    2. Re:I agree with MS by Zphbeeblbrox · · Score: 1

      I really don't understand this whole Javascript is horrible attitude. Javascript is really quite useful and nice. It's approach to Object Oriented is, while different, very useful. It has all the features a basic language needs Branching Looping and variable storage. It is partially functional in nature so that may throw some people off a bit but once you get the whole idea it just flows naturally. Javascript is actually my second favourite language.

      Implementations vary as to their usefullness of course. Mozilla's is by far the best and Venkman gives you as good a debugger as you could ask for. I don't even see what more Javascript needs. Maybe threading would be useful maybe not. The DOM functions need a lot of improvement but libraries like MochiKit and JQuery hide a lot of that pain and I see no reason why that should be a problem.

      Microsoft's implementation is the least friendly but even it does most of what I need in a language. What exactly are the complaints to Javascript other than "I'm not used to thinking this way?"

      --
      If you see spelling or grammatical errors don't blame me. I tried to preview but IE here at work borked the CSS
  30. Ug. by SatanicPuppy · · Score: 4, Insightful

    Javascript is intentionally designed to be less functional than any of the languages you've mentioned, and with good reason...A client side language with the sort of feature set that perl or ruby or python has would be death on a plate in the context of a modern web browser; you'd go to a webpage and it wouldn't just slip you a trojan--it'd reinstall your OS.

    Client side languages need to be concerned purely with the cosmetics of the interface. Any single step beyond that opens up some extremely scary security concerns.

    --
    ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    1. Re:Ug. by cromar · · Score: 1

      Yes, definitely it would be a bad idea for webpages to have the full power of those languages behind it: JavaScript is scary enough. Really, I am thinking of something more syntactically pleasing than js... something tailored specifically to presentation would be great. A lot of non-UI js code already could (and probably should) be replaced by calls to web services. Hell, a whole new protocol for this sort of "internet application" stuff would be SO nice and so much easier to secure.

      Some one really needs to step in and cut out these security liabilities, but I doubt Mozilla or MS is going to do that anytime soon :(

    2. Re:Ug. by supermansuper · · Score: 1

      Exactly! Who needs to use the abundant processing power available on the client machines. Let the servers do all the processing, send back both the layout and data back to the client through the wire. Why care about bandwidth?

    3. Re:Ug. by insertwackynamehere · · Score: 1

      I've been thinking this for a while. As cool as it is to see what some sites pull off with AJAX, it's nothing more than a hack. There needs to be a more up-to-date way of making dynamic web pages, and it should be tailor made for this purpose, not hacked together with outdated things like DHTML and Javascript and iframes.

    4. Re:Ug. by larry+bagina · · Score: 1

      A client side language with the sort of feature set that perl or ruby or python has would be death on a plate in the context of a modern web browser; you'd go to a webpage and it wouldn't just slip you a trojan--it'd reinstall your OS.

      Hint: Javascript is turing complete. A ruby interpreter can be written in Javascript. The browser sandboxes the scripting language. It's not an issue.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    5. Re:Ug. by bishiraver · · Score: 1

      Not only that, but not only is JavaScript purely object oriented, it can leverage Functional programming language features such as lambda and enclosures to fully replicate inheritance. Even on-the-fly. Especially on-the-fly.

      JavaScript, while in some respects is really fucking braindamaged, is in other respects extremely awesome. It's sort of like the idiot-savant of programming languages.

    6. Re:Ug. by multi+io · · Score: 3, Insightful

      JS has several features that e.g. Python lacks, for example prototypes, open/classless objects and closures. JS bashers usually know little about JS and largely perceive it as a web toy, something like VBA with Java syntax and without the IDE. The fact is, you can write real, reusable, object-oriented software in JS, without going crazy in the process. There are deficiencies and incompatibilities in the various browser runtimes, but those are neither JS's fault nor will they magically be avoided by inventing some new language.

    7. Re:Ug. by NewbieProgrammerMan · · Score: 1

      Just a tiny nit: I thought Python had closures? Or is there some aspect of them in Python that makes them "not quite real closures?" (I'm not trolling, it's a serious question)

      --
      [b.belong('us') for b in bases if b.owner() == 'you']
    8. Re:Ug. by HiThere · · Score: 1

      It's got prototypes, too, though you need to be a bit clever about it. (As usual, using prototypes adds overhead. Sigh!)

      Arguing that Javascript is a complete language is rather like arguing that a Turing machine is a complete programming environment. Technically, it's a correct statement. Practically... well, it's a bit slow and clumsy.

      N.B.: Python is slow compared to C, but it's NOT clumsy. Javascript is both slow and clumsy compared to Python. In an environment where the critical path component is the reactions of the end-user the "Slow" usually isn't significant. In an environment where you WANT to constrict what can be done, the clumsy can be a genuine benefit. (Just TRY to write a random access file manipulation routine in Javascript! Now imagine trusting such a file coming in from a randomly chosen web site...and you'll see the advantages of that being difficult. [I won't say that it's impossible, as I don't believe that it is...at least not if you assume the presence of a few standard libraries. Which is a pity. Java attempted to MAKE such a thing happening impossible. Perhaps it succeeded, as I haven't heard any dire warnings about allowing remote execution of Java applets recently. But Java's a relatively heavyweight language.])

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    9. Re:Ug. by Anonymous Coward · · Score: 0

      Boy, you functional guys and yer closures:

      #Returning a closure that adds number to arg
      #stolen from the python cookbook

      def make_adder(number):
      def adder(arg): return arg+number
      return adder

      Or perhaps a classless object:

      myObj = Object()
      myObj.myAttr = 4
      myObj.myMethod = lambda x: x+4

      Python has several features that e.g. Javascript lacks, for example full OO-suppport, polymorphism, namespaces and modules. Python bashers usually know little about Python and largely perceive it as a toy language, something like PHP with whitespace and without the deployment. The fact is, you can write fast, robust, object-oriented software in Python without losing your mind with prototypes in the process. There are few deficiencies and incompatibilities across various implimentations, but alas, python isn't installed on your browser (except for those of you with PyXUL).

      Ug.
    10. Re:Ug. by multi+io · · Score: 1

      def make_adder(number):
      def adder(arg): return arg+number
      return adder

      Looks like this stops working when you introduce some state:

      >>> def make_adder(number):
      ... def adder(arg):
      ... number = number + arg
      ... return number
      ... return adder
      ...
      >>>
      >>>
      >>>
      >>> a2=make_adder(5)
      >>> a2(8)
      Traceback (most recent call last):
      File "<stdin>", line 1, in ?
      File "<stdin>", line 3, in adder
      UnboundLocalError: local variable 'number' referenced before assignment
      >>>
      Python has several features that e.g. Javascript lacks, for example full OO-suppport, polymorphism, namespaces and modules.

      The lack of namespaces is a problem, yes -- but there are way to deal with that (basically, use "namespace objects"). I don't know what you mean by lack of polymorphism -- you can dynamically overwrite/replace methods all the time, so there's polymorphism all over the place.

      Python bashers usually know little about Python and largely perceive it as a toy language, something like PHP with whitespace and without the deployment. The fact is, you can write fast, robust, object-oriented software in Python without losing your mind with prototypes in the process.

      You don't need to use prototypes at all to do OOP in JS. In fact, closures in combination with open objects are arguably a more general concept than "traditional", class based OOP. Look here for a possible approach (I came up with this recently for a relatively large JS/AJAX project):

      http://user.cs.tu-berlin.de/~klischat/mydocs/javascript/closure-based-oop.txt.html

      You wouldn't believe what big leaps you can make with this :-P

  31. In Other Words... by MightyMartian · · Score: 1, Troll

    As usual, Microsoft is attempting to wipe out an existing standard in favor of some new bastardized monster which it will control. Everyone will have to play catchup to Microsoft's ever-shifting language target, web developers will more than ever be stuck writing everything twice, once for IE and once for everything else. To further its monopoly, it will screw developers and consumers.

    I mean, and what the fuck is wrong with updating a fucking language? Christ, they've been doing it with C for the better part of four decades, Fortran and Cobol for longer (adding OOP functionality and other radical new ideas). Microsoft has done it tons with its own Basic dialect, which barely resembles the old MS-BASIC found on Trash-80s and the like.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
    1. Re:In Other Words... by Anonymous Coward · · Score: 0

      I mean, and what the fuck is wrong with updating a fucking language? *Excellent* illustration, sir, of exactly what kind of crap we can expect when they update the language as you have updated yours. I for one welcome our adjectivially- and adverbially-challenged overlords.

      Oh, wait a minute... Oh, yeah! I think people who know but a single wildcard word (always four letters it is) are *stupid*! :D
    2. Re:In Other Words... by Anonymous Coward · · Score: 0

      Amen! And I love how everything but pro-Microsoft comments are getting modded down through the floor. Gee, Microsoft, I hope it's worth it to pay all your asstroturf gnomes to pollute a rational public discussion. What a metaphor for how Microsoft gets along with the web!

    3. Re:In Other Words... by Anonymous Coward · · Score: 0

      Amen! And I love how everything but pro-Microsoft comments are getting modded down through the floor. Gee, Microsoft, I hope it's worth it to pay all your asstroturf gnomes to pollute a rational public discussion. What a metaphor for how Microsoft gets along with the web!
      You don't dig deep enough. It is really the Illuminati that is behind it. I'm guessing they are paying about two thirds of Slashdot posters, on all sides just to confuse you, that is how insidious they are!
  32. MS Trying to undo the Outlook Web Access Mistake by TheNarrator · · Score: 4, Interesting

    I think Microsoft royally screwed up with outlook web access. They added XMLHttpRequest to the browser so outlook web access would work more like a desktop app. They built an application on a technology that did not require full access to the latest version of the win32 api and x86 assembly language and it was off to the races. Most of Google, Yahoo and indeed the entirety of Web 2.0 was built on this mistake. They are desperately trying to put the web back in the original box they intended it to be in which is people without access to the latest version of the full Win32 API, and an X86 processor will be denied access to all online content.

  33. How about starting over from scratch? by parvenu74 · · Score: 2, Insightful

    Javascript, like HTML, has grown to handle tasks it was never envisioned or intended to do when it was first created, and that has tremendous implications in the security space (cross-site scripting, cross-site request forgery, etc). Why not just scrap the HTML and Javascript specs and start over with something designed with security in mind from the get-go? Swapping Javascript for Python or Ruby only means that we get to write/deal with exploits with more syntactical sugar. Let's fix the darned problem once and for all.

    1. Re:How about starting over from scratch? by Arthur+B. · · Score: 3, Insightful

      Because HTML and javascript

        - have know been widely field tested, their strenght and shortcomings are known, there are hundreds of implementation of them that have been heavily tested and debugged, this is extremely precious
        - it is widely adopted, switching represents a huge cost for the whole industry (not only it pro but all the people in the world who live by selling html developpement)

      While starting from scratch looks pleasant, for big things (and html is *big*) gradual changes are more appropriate.

      --
      \u262D = \u5350
    2. Re:How about starting over from scratch? by nschubach · · Score: 1

      Isn't that the Microsoft model though? Make software, distribute it, fix it, stabilize, make new software, distribute it, fix it, etc...

      They've done it with every iteration of Windows so far and it gets them nothing but grief: "Wait for SP1". However, extending previous technology is the core of everything they resent. It means that your OS or language may one day get good enough that you don't have to upgrade. It becomes "good enough" for most people and they don't fork over wads of cash for the new version of the OS that happens to be needed to run this new web technology.

      Personally, i see no problem extending JS via the namespace model that .NET and Java use. Implement new features in a new namespace and retain the old ones until a time comes when they are no longer used, not needed needed or replaced. Improve Javascript over time using deprecation. Offer debug tools (like Firebug) that tell the developer that they are using a deprecated command and give the description documents (that usually include an alternative method.)

      This of course goes against the Microsoft model of a continuous "massive" upgrade treadmill instead of refinement over time.

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
  34. Language Plugins by Doc+Ruby · · Score: 2, Interesting

    I'd prefer to see scripts specify which language interpreter they're tested under, and the browser (or other executing object) retrieve an interpreter for it, caching them (and bundling popular ones if necessary). Why should old scripts stop working because they fixed something I never used in its interpreter, and left out the things I did use?

    --

    --
    make install -not war

    1. Re:Language Plugins by Maian · · Score: 1

      Firefox supports Python I think, but it doesn't support it right out of the box. It requires the user to download the whole Python package, which is at least 20mb last I checked. Mozilla is fine with supporting different languages, they just don't want to ship the runtimes for them.

      With that said, I do indeed wonder if they could take the Flash plugin installation route with alternate languages. The problem though is that it should not be automatic - that's a large security whole waiting to be exploited. It should require consent but in a user-friendly way. Namely, whenever a user navigates to a page that requires Python or Ruby or whatever, something notifies them - probably something like the extension installation "popup" - to automatically download the appropriate runtime and optionally restart the browser afterwards.

    2. Re:Language Plugins by SL+Baur · · Score: 1

      the browser (or other executing object) retrieve an interpreter for it, That's exactly the wrong approach. Perhaps you missed the article yesterday http://apple.slashdot.org/article.pl?sid=07/11/01/1855259 on the Mac OSX trojan download.

      Executable content on the web is just plain wrong and no amount of Microsoft's or anyone else's marketshare makes it right.
    3. Re:Language Plugins by Doc+Ruby · · Score: 1

      You do know that the Javascript, in any version, that we're talking about is "executable content on the Web", right? Or are you just making some kind of point about prohibiting any version of Javascript?

      The solution is the same as what protects other risky data in browsers (and otherwise on the "Web"). Just as there are code signing authorities, the language plugins should be signed and available from trusted sources. Eg. Microsoft and Mozilla, and from my friend's server in the lab across campus.

      --

      --
      make install -not war

    4. Re:Language Plugins by SL+Baur · · Score: 1

      Or are you just making some kind of point about prohibiting any version of Javascript? I'm not a big fan of any kind of Javascript and I'm on the side of turning it off. On a scale of 1 to 10 where 1 is dangerous and 10 is most dangerous, Java would rank about a 3, Javascript an 8 and ActiveX/plugins 10+.

      Just as there are code signing authorities, the language plugins should be signed and available from trusted sources. Signed code or no it's still a dangerous practice that was rejected as unsafe two decades ago (unshar was written for a reason) and the proliferation of successful attacks today is the proof. Accidents happen, music albums get distributed with root kits installed by the supplier on them, broken signed updates get downloaded in the dead of night, etc.

      I'm also convinced it doesn't add anything substantial to the web experience. The one other site I regularly visit that requires Javascript is the Blizzard WoW forum. There's plenty of "eye candy" there, but as a forum application it's slow and awkward at best to use.

      The one Web 2.0 application done correctly (a decade ago) was Lars Magne Ingebrigtsen's Dejanews backend for Gnus.

      Forget the layout which doesn't tend to work right anyway, forget the executable scripts, etc., concentrate on delivering content. To name one example (and thinking about what www.deja.com looks like today), if advertising is a necessary requirement, their time would be better spent defining a protocol where either the client accepts advertising (adblock or no) or the server has the chance to not deliver any content at all.
    5. Re:Language Plugins by HiddenBek · · Score: 1

      Javascript implementations have had a bunch of vulnerabilities over the years, and JS was a language specifically designed to be used on the web. ActiveX used the same trust model that you describe, and look how that turned out.

      In order for this to work, every browser on every platform would need a plugin for every supported language, but as soon as a hole was discovered in any one of those languages, everyone would be at risk. I don't think this is preferable to the current situation.

    6. Re:Language Plugins by Doc+Ruby · · Score: 1

      Then turn it off. The rest of the Web seems to find value in AJAX, and executable content with protections in general.

      If you like Web 1.0, it's still an option. As is turning off SSL and never trusting the Web with any data, executable or otherwise.

      --

      --
      make install -not war

    7. Re:Language Plugins by Doc+Ruby · · Score: 1

      You ignore that we have the same problem with Javascript's executable, and the same solution: trust only the executable from the trustworth source, which in this case is bundled. The only difference I'm suggesting is that the executable be required to be trusted, probably from just a few sources (eg. Microsoft and Mozilla, maybe the maker of some other browser if they want).

      The problem is when the trust layer is ignored, and everything is just trusted. The key to that is making only a few, actually accountable sources of language executables trusted by default, and a GUI that is both lockable by a remote admin, and warns the consequences of adding trusted sources. Most everyone who can't figure out who not to trust won't ever change their defaults anyway.

      Or we can have browsers and "Javascript" that are never completely compatible, which is the current situation.

      --

      --
      make install -not war

    8. Re:Language Plugins by HiddenBek · · Score: 1

      I misunderstood your trust model. What you suggested isn't like ActiveX, so I apologize for the snarky comment. That said, given the parties involved, I don't think this will ever happen. It would be interesting if it did though.

      There are major technical hurdles to supporting languages across multiple platforms. Microsoft would almost certainly release a VB based language, and Mozilla would almost certainly not, so I think there'd have to be some sort of common virtual machine and DOM to allow everyone's plugins to work on everyone else's platform. Standardizing on one would be difficult from a political standpoint, but I suppose it could happen if the W3C got involved. A VM would address most of the security issues as well.

      Is that what you had in mind? How do you see this working, technically?

    9. Re:Language Plugins by Doc+Ruby · · Score: 1

      The languages aren't really the problem. What is a problem is a single "browser" class API across all browsers, across all platforms. Then that API can have modules that read scripts in their language, and calls the underlying API. The browser maker can validate whichever modules they want and bundle them. Scripts call a language by its ID (eg. "language=javascript; version=mozilla.org.2007-5-20.1"), which the browser uses as a key to select the runtime engine. When the key doesn't match an installed/cached engine, the browser shows an error. The user can configure the browser in its settings to add a module, the same way the user can add CAs, certificates or other security validators (which the module does include, if it's any good).

      The other problem is that a single language means more abstract problems are solved, rather than some work solving more going to solve fewer, but in different languages. This whole thing is just a repeat of the "VBScript vs Javascript" battle that Microsoft fought (and lost) against Netscape. Why Microsoft is fighting it again I don't know, except it probably has some reason to think it can win this time now, and grab "home court advantage" in the browser competition. Which itself is a waste of time, that MS already lost several times in every way that matters except total installed base, which is what matters most, and isn't changing. But browsers used to accommodate both VBScript and Javascript, depending on which one the script called, so there's no reason not to do it again, except the same redundancy reasons as before.

      Which is why I say open it to anyone. If MS succeeds in forcing a "dual standard", why should that work to MS' advantage only? Why not say they forced open the door to everyone, so long as you trust them. Which also lets users (and their admins) say they don't trust MS. And opens more opportunities to anyone else with a language to try. Personally I prefer Perl, and its huge library of modules.

      --

      --
      make install -not war

    10. Re:Language Plugins by Myen · · Score: 1

      Firefox supports python, but only with a special build of Firefox (so as to not have a dependency on starting Firefox in normal builds, I think), as well as only in extensions/the app itself (not in any web pages). Python's security model doesn't quite jive with the old same-origin stuff web pages use, AIUI.

      See: ActiveState Komodo.

      As for pluggable languages... Are we talking about IE now? :) IE does do that, but you need local installers. JScript and VBScript are done to interface that way, and ActiveState (yes, them again) has perl bindings.

    11. Re:Language Plugins by NoOneInParticular · · Score: 1
      A signed language will not help, unless the signature comes with the guarantee that the language interpreter has a proper sandbox. If not, every piece of code that would be running in the interpreter needs to be signed as well. See the Active-X fiasco.

      Although the javascript sandbox is not historically 100% foolproof, the browser makers themselves have an incentive to make it as good as they can. If their javascript sandbox is bad, their browser will be blamed. Thus you can run javascript from untrusted sources without being wide open for even the most trivial of attacks.

      The only solution to this dilemma is to have a good sandboxed virtual machine in every browser that multiple languages can target. Extra interpreters running in this VM would be safe. Not surprisingly, this was the solution Sun was advocating all these years ago with the Java VM, but they failed on the multi-lingual part. My guess is that if Sun would have made certain that javascript could compile to the jvm, and run at reasonable speed, everyone but Microsoft would be using the jvm as the browser's sandbox. Instead, they decided to push Java as an alternative to JavaScript, and lost on the browser.

      As it is, we're still waiting for a multi-language sandboxed VM for the web. The JVM isn't it (single-language), .Net isn't it (too proprietary, MS & Security?), javascript isn't it (too slow to write interpreters in), and Parrot isn't it (no sandbox).

    12. Re:Language Plugins by NoOneInParticular · · Score: 1

      Quick disclaimer before I get flamed. I actually don't know if Parrot got a good sandbox or not. It might. If it targets javascript as well, it might be a winner.

    13. Re:Language Plugins by Doc+Ruby · · Score: 1

      We can have all that. As I said, I'm not talking about a new interpreter automatically downloaded, installed and executing locally with privileges for any script that calls it from any URL, just because the infrastructure supports it. I pointed out that the GUI should handle installation of language modules the way it does CAs and certificates. To help ensure that only actually trusted sources work. Much like installing, say, the Flash or Java plugins, which are exactly that: different language plugins that map downloadable scripts to the browser's API (and through it, the OS and IPC API).

      Part of the solution is safe languages. Another part is a trust web that minimizes the trusted sources (eg. just Javascript, "MSScript", and maybe "localITScript"). The combo of both safety nets, and others, is the balance point in the typical tradeoff between function and security.

      --

      --
      make install -not war

    14. Re:Language Plugins by Zphbeeblbrox · · Score: 1

      there is absolutely no reason why Parrot couldn't target javascript. Whether it does or not I couldn't say right now. But nothing in it's implementation prohibits targetting javascript.

      --
      If you see spelling or grammatical errors don't blame me. I tried to preview but IE here at work borked the CSS
    15. Re:Language Plugins by Anonymous Coward · · Score: 0

      That's how IE works, only in real life the user has to download the script engine. You wouldn't want the script engine to be downloaded automatically anymore than you would want it for other browser plug-ins.

      dom

    16. Re:Language Plugins by Doc+Ruby · · Score: 1

      This is true for any browser that runs plugins.

      When I get a page, if it's got content embedded of a type not natively handled by either the browser or a "helper app", the browser looks for a plugin keyed to the content's type. First in its cache/installation, then in a repository on the Net. The browser downloads a plugin that then executes as directed by the content.

      As I mentioned elsewhere in this thread, the user acceptance UI for installing new language plugins should make it difficult enough that it's worth checking whether installation safe. The point isn't to download a new interpreter with every script, multiplying scripts willy-nilly across the Net. Just to remove the straitjacket that makes MS/Mozilla fights to control Javascript hold up all development in the "official" scripting language. Remove the monopoly requirements, and let the market decide. And even if the market decides that "MS Javascript" is the default in which most pages are written, anyone who wants can challenge that with better apps.

      --

      --
      make install -not war

  35. Seriously? by SatanicPuppy · · Score: 2, Insightful

    You want to give a website the ability to run client side perl?

    Considering the amount of havok that is caused using javascript, a language that can't even actually write to a file, I can't even imagine the chaos that would be caused by perl, with all of it's methods for reading system states, and manipulating files and output devices.

    --
    ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    1. Re:Seriously? by SCHecklerX · · Score: 1

      I'm sure there are reasonable ways to sandbox the interpreter.

    2. Re:Seriously? by SatanicPuppy · · Score: 0

      I'm sure there are reasonable ways to sandbox javascript...But no one has done it yet.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    3. Re:Seriously? by Randle_Revar · · Score: 1

      JS in the browser is limited by the Browsers DOM and security model. JS itself can write to a file just fine.

      Just pointing that out, I am not supporting or opposing new client-side web languages.

    4. Re:Seriously? by Anonymous Coward · · Score: 0

      Taint mode. Been done.

  36. Re:Flash-bashing equivalent by vtscott · · Score: 1

    Why, for example, is it necessary to use javascript to cause the browser to follow a link? Or to refresh a page?

    I find it incredibly annoying when links are done in javascript. When I follow a link, I usually middle click on it so it opens in a new tab. With javascript, if I try to open the link in a new tab all I get is a blank page. More bloat and less convenience... *insert offtopic slashdot snipe about how this could also describe windows vista*

  37. Re:Flash-bashing equivalent by Hal_Porter · · Score: 2, Interesting

    Did you know that in Opera you can right click on a web page, select Edit Site Preferences and disable Javascript, or just disable the features the site abuses. No extension needed! And it runs perfectly fine on older machines since it doesn't leak memory like sieve like certain competing browsers. It's also free and cross platform just like them.

    And it has fewer vulnerabilities -

    http://news.softpedia.com/newsImage/Internet-Explorer-vs-Firefox-vs-Safari-vs-Opera-3.png

    Plus since it has a tiny market share it's very unlikely anyone will bother to target it.

    --
    echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
  38. WTF is ITYM? by Dan+Ost · · Score: 1

    ITYM?

    What's that short for?

    --

    *sigh* back to work...
    1. Re:WTF is ITYM? by Hal_Porter · · Score: 1

      ITYM?

      What's that short for? I think you mean.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
  39. Re:big surprise by Anonymous Coward · · Score: 0

    What do you mean contribute something. They must be contributing something because they own the market share. Oh sorry do you mean to the open source i don't want to pay for anything community? The community where copy writes don't matter? Where paying an employee to think and then patenting your investment is wrong? Open source is like the rich teenage kid, always wants daddy to hand them everything. Open standards, free software blah blah blah

  40. Python in HTML = BAD by Anonymous Coward · · Score: 1, Insightful

    Do you really think it is a good idea to insert a whitespace meaningful scripting language (Python) into whitespace meaningless HTML? The level of indenting in HTML has no effect on the rendering, but change the indenting in Python and you've borked your script.

    Seriously, Python would be the WORST language to use for scripting in HTML.

    Javascript is actually pretty good, the only reason it has a bad name is from the different browser implementations and different DOM accessing methods. Fix that, and add some more convenience libraries / functions and you are set.

  41. if only by drfrog · · Score: 1

    iso and/or w3c could actually DEMAND full operation of the ecma standard in applications, and hand down some sort of ecma certification

    im sick of these companies arbitrary implementations!!

    its time for interoperability and compatibility

    the amount of time and money spent by developers/designers to handle these different browser implementations is ludicrous

    these standards organizations should start doing their job and start making sure companies are implementing these specs properly

    its this sort of stuff that has sabotaged vrml and others in the past.

    by allowing anyone to interpret and implement their own interpretted version we, as developers of web applications, get left with the clean up

    its time for these companies to start being more exact

    and for the standards organizations to start making sure their standards are being implemented correctly

    --
    back in the day we didnt have no old school
  42. Noscript by Mdentari · · Score: 0

    Amen to that. It's makes my browsing exp much more enjoyable. Highly recommend it.

    --
    Morality, filters both ways.
  43. Who needs Silverlight? by DrXym · · Score: 3, Interesting

    My guess is Microsoft realise that compatibility with JavaScript, HTML and other open standards is questionable in most browsers and they absolutely do not want to make it any better. After all, if the open standards were adhered to (and improved such as with ES4), who would care about Silverlight or .NET? I think that's the bottom line here. ES4 makes many fundamental improvements to JavaScript. It's not hard to think that ES4 + HTML + a strong Ajax lib might render Silverlight irrelevant. And Microsoft sure can't let that happen. Better to talk up problems in js and subvert every effort to improve. Meanwhile they'll push Silverlight as the solution to all the problems they're partly responsible for. The sad part is that Flex and venerable Java are still better solutions than Silverlight but we know how the industry loves the next best thing even if there is no need to.

    1. Re:Who needs Silverlight? by I'm+Don+Giovanni · · Score: 1

      Um, you do realize that Silverlight 1.0 runs on and RELIES on Javascript, don't you?
      And Silverlight 1.1 will do the same (just add support for .NET languages as well).

      Oh, and you do realize that it was MICROSOFT that standardized Javascript in the first place, don't you? Netscape wanted to keep it as their own proprietary invention, adding features at will while other browsers had to keep chasing whatever Netscape did. It was MICROSOFT that submitted their implementation (JScript) to ECMA for standardization, which resulted in ECMAScript (the formal name of the Javascript standard).

      --
      -- "I never gave these stories much credence." - HAL 9000
    2. Re:Who needs Silverlight? by TheSunborn · · Score: 1

      Which just make it so much worse, that Microsoft did not implement the entire ECMAScript standard.

    3. Re:Who needs Silverlight? by DrXym · · Score: 0
      Silverlight may have a scriptable interface via Javascript but that hardly means it RELIES on JavaScript. More likely JS is the defacto glue for bonding plugins with HTML content. That's where the association ends. I think it's fairly obvious that MS feels threatened by JavaScript getting any richer than it is now. After all, if it becomes expressive and rich enough to stand alongside Java or C#, why bother with either of those things? Not only do they have to implement the new features but those new features diminish any reason to be using a proprietary technology.

      As for MS driving ECMA standardization... if they did then good for them. It doesn't mean all their intentions before or since are somehow immune from scrutiny.

  44. You just have to love Microsoft. by PHAEDRU5 · · Score: 1, Insightful

    "Embrace and Extend" not working, Microsoft goes with "Repudiate and Close".

    I expect a Dilbert strip about this any day now.

    --
    668: Neighbour of the Beast
  45. Sure by Colin+Smith · · Score: 2, Interesting

    But if MS creates a new language and it's beloved of "web developers", it won't take long to be implemented within Firefox, Opera and Safari. If not beloved and not supported, it'll die.

    --
    Deleted
    1. Re:Sure by markjl · · Score: 2, Insightful

      I seem to remember VBScript, it's a perfect example of MicroSoft's agenda and why JavaScript should evolve instead of fork. From a pragmatic point of view, there might have reason -- but it's clear that MicroSoft's agenda is neither technical, nor pragmatic. Image M$ advancing the same argument for forking Java into a new language when new functionality/semantics were planned? It's ridiculous.

      --
      My opinions are my own, but you may share them!
    2. Re:Sure by JCSoRocks · · Score: 1, Insightful

      In which case we'll be right where we are now... with old JavaScript and the addition of some useless language. Microsoft always wants to make a new language. I'd absolutely vote for the improvement of JavaScript, it makes sense and all browsers can (theoretically) be relatively easily updated to support it. Additionally, developers are busy enough keeping up with the constantly changing landscape, we don't need *another* freaking language. There are plenty. Just add the features it needs and fix the bugs.

      oh, and one more thing... please, please, please, can we do something about the insane code necessary to make JavaScript work on the two major browsers? It's ridiculous the amount of garbage you have to throw in just to cover yourself for the last two versions of the two big browsers. Can we just make browser upgrades mandatory or patch old versions or something? (I know that'll still leave me with the Mozilla / IE differences but then I only have to worry about two browsers instead of four.)

      --
      You are using English. Please learn the difference between loose and lose; they're, there, and their; your and you're.
    3. Re:Sure by Neo_piper · · Score: 2, Insightful

      Don't forget all the fun with JScript in Internet Exploder.
      But seriously folks if one way or another it's gonna be a different language, just call it "Javascript+ ver.1" instead of "Javascript ver.N+1" as long as you keep the ability to run "Javascript ver.N" in the browsers I don't see whats to bitch about in making it a different language.

    4. Re:Sure by Neo_piper · · Score: 3, Insightful

      Yes you can make browser updates mandatory, by simply refusing to support the old ones. ( all hail Cthulhu )
      You know the same way Apple and Microsoft force you to get new computers if you want to run the "New And Improved With 25% Fewer(?) Gaping Security Holes Operating System"
      But that would require organizing developers into some form of union.

    5. Re:Sure by Anonymous Coward · · Score: 0, Funny

      Image M$...

      F$r cry$ng $ut l$ud, c$n w$ plea$e mov$ pa$t thi$ MS w$th $ '$' th$ng?

      It'$ n$t lik$ y$u $ver w$rk f$r fr$$. Plu$, $t annoy$ th$ h$ll $ut o$ ev$ryon$.

    6. Re:Sure by Wiseman1024 · · Score: 1

      Embrace, extend, extinguish.

      Also, I'd concentrate on fixing their horribly broken, buggy, slow, crappy, teenage-assignment-quality implementation of JavaScript for their failure of a browser, before caring to extend and extinguish. Microsoft is still in the "embrace" phase.

      --
      I was about to say 13256278887989457651018865901401704640, but it appears this number is private property.
    7. Re:Sure by kabz · · Score: 1

      Just watch Douglas Crockford on Yahoo Videos, and you'll see that many of the current problems in Javascript could have been fixed earlier on, instead of which, MS held onto compatibility.

      Luckily, there's enough good in Javascript that it continues to live and evolve.

      Look up Joe Ganley's 'LISP in Javascript' which is a really cool LISP, that runs in a web page. JS is my favorite language right now, and I'm looking forward to all JIT work being done by Adobe and Mozilla.

      --
      -- "It's not stalking if you're married!" My Wife.
    8. Re:Sure by Anonymous Coward · · Score: 0

      Plu$, $t annoy$ th$ h$ll $ut o$ ev$ryon$.
      N$h, j$st y$u. $-)
    9. Re:Sure by MillionthMonkey · · Score: 2, Funny

      But if MS creates a new language and it's beloved

      I believe I have spotted the flaw in your argument.

  46. JavaScript is perfect with a couple exceptions by BillPStudios · · Score: 0, Troll

    JavaScript as it is now is a beautiful thing. Having Microsoft create something new is just their way of killing Javascript like they killed Java's future by adding their own features and confusing developers. Contrary to one post, Javascript does a lot more than just rendering ads. The best thing about Javascript is ease of programming. You don't have to be a professional programmer or web designer to create fun, useful stuff using JavaScript. There are plenty of functions in the public domain that novices can use to enhanced their web pages. What ever Microsoft creates will require a whole new object oriented, template based language which will be wonderful for anyone who has 6 months to learn it. The one thing needed for JavaScript needs is some security tweaks. It scares me anytime there's a new vulnerability found and researchers tell folks the easy solution is to disabled JavaScript. Bill

  47. Re:To me, this seems vaguely pointless for browser by pohl · · Score: 1

    I'd like to see something like GWT where the source language is Javascript instead of Java - that is a Javascript to Javascript compiler where you could add whatever local features you need and have the compiler throw away the fluff and stick in cross-browser compatible shims.

    You'll probably not get this wish any time soon. An essential design choice in GWT is that the source language uses static typing. This is what allows for the resulting "binary" (javascript) to be as small as possible (everything is monolithically compiled as one unit, and so the compiler can dead-strip any code that is provably never called -- and that "proof" hinges on static typing. Incidentally, the static typing is what makes fancy method/member completion in IDEs like Eclipse/Netbeans possible too. You'll not be seeing tools like that for JavaScript any time soon.

    GWT is a brilliant design. I'm so happy someone thought to create it. I realize there are a couple of other things out there in a similar vein, but GWT is the only one that focused on building excellent web applications, rather than trying to make fat-client-apps-in-a-browser or X11 emulators.

    --

    The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...

  48. Not amenable to a first principles analysis by hey! · · Score: 1

    You can't say "it's better to do this in a new language" or "it's better to extend the existing language" in abstract.

    The right question is "Is this feature more trouble for implementers and users than it's worth?" If yes, it probably goes in. Either way, it can go into the new language.

    Microsoft may have perfectly ordinary maintainer's qualms here. They don't support the full set of standards they're supposed to already; in addition, they've got non-standard extensions already that may clash in various ways foreseen and unforeseen. And people, if not exactly ecstatic about the state of the product, at least can live with it.

    If maintenance ain't going so well, and lots of people depend on the stuff that's already there, a developer naturally starts thinking about clean sheets, or fresh fields of snow, or whatever, so long as it isn't digging the hole he's in any deeper. Other people may or may not be in the same boat; in fact, that's really the question. The most commonly used implementation is an important data point, though; they'd be perfectly within their rights to say, "go ahead, but we're not on board."

    It may be entirely a coincidence that this opens the door to all kinds of skullduggery. On the other hand, nothing really is stopping them from taking the IE ball and going home on the next revision of the standard, offering ActiveVisualWebScript or whatever to future standardization efforts as a fait accompli.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  49. Re:To me, this seems vaguely pointless for browser by pohl · · Score: 1

    Incidentally, you may want to investigate JSNI -- GWT's JavaScript Native Interface. It allows you to write incantations in your Java code that can call out to other JavaScript libraries -- if there's something you'd like to be able to exploit within the scope of a GWT project.

    --

    The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...

  50. MS is right on this one, unless... by Anonymous Coward · · Score: 0

    MS is right unless the new language is backwards compatible with the current javascript.

    Old javascript needs to keep working.

  51. How much will it break? by tvlinux · · Score: 1

    I have looked at ECMAScript V4 and it is much better than V3. I see major changes, all for the better, The question is how backward compatibility is it? AND How much backward compatibility is needed. Like HTML, JavaScript is evolving, like it should. Is XHTML a different language than HTML 3.0?

    My feeling is it should just go to the new version, get it in FireFox 3.0, start testing it there. see what happens.

    shaun

  52. Re:MS Trying to undo the Outlook Web Access Mistak by pohl · · Score: 1

    Wow, that makes so much sense. I've never been able to explain why they would introduce something like XMLHttpRequest. I was unaware that its history was tied to outlook web access. I think you're right: they screwed up to our benefit, and now they're trying to put the genie back in the bottle. Thanks for that little history lesson!

    --

    The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...

  53. I don't like either approach by Panaqqa · · Score: 1

    At this point I don't like the thought of either approach. In the case of Microsoft's approach, adding a completely new scripting language, I can foresee another 10 years of attempts by them to lock web developers into using a Microsoft defined framework while at the same time making compliance within other browsers difficult. They will make sure that other browser development teams are always trying to hit a moving target and stretching their resources, while MS sits back with 10 times the developers and makes this new scripting language ever more integrated with whatever they are calling an operating system that year.

    But I don't really like a "radical upgrade" approach as proposed by Mozilla either. While it is the lesser of two evils, I can foresee many many security issues, unless the radical upgrade is designed from the ground up with curtailing XSS vulnerabilities and the like in mind. Also, as we head blithely into a Web 2.0 world (never did find the RFC for "Web 2.0"), I see more and more processing dumped in the lap of the web client that has to render the web page. Where we used to begin to get annoyed at web pages that took more than a few seconds to load, somehow we are now okay with waiting 20-30 seconds for some Javascript heavy page to render in addition to the loading time. Not everyone out there writes good efficient Javascript code such as Google.

    Let's fix what's broken with Javascript first. Let's make XSS attacks hellishly difficult to create and fix the sandbox that JS is always threatening to break out of. Sure, let's add an extension or two so that AJAX functionality has more inbuilt support, rather than being what it is now: a massive hack of XMLHttpRequest. Let's even work at simplifying handling of browser differences in the DOM and increase the efficiency of the interpreter for what is unfortunately a very clunky interpreted language.

    But while we're doing this, let's not break it, okay? Not everyone out there is a typical Slashdotter. I know people who are very proud of having constructed their own websites in (awful non-compliant) HTML with a few Javascript bells and whistles too. If we give those people a "new and improved" scripting language that is much more difficult to write, then we take away something that made the web so exciting at its very start in the early 90s: the fact that anyone with just a small amount of technical knowledge could publish rich content to be viewed anywhere the Internet reached. I know, backwards compatibility can be a bitch at times.

  54. Some of this is precious LOL by Anonymous Coward · · Score: 0

    Take this gem:
    "As I've frequently spoken about publicly, compatibility with the current web ecosystem -- not 'breaking the Web' -- is something we take very seriously," Wilson wrote on the Internet Explorer team blog this week.

    This from the company who had to be sued over breaking Java in the first place? This from the company whose latest OS, Vista, is incompatible with a vast number of wireless routers that have been running for years with XP? Wilson is fulla shit! The only compatibility Wilson is concerned with has to do with maintaining Microsoft's domination over the web ecosystem. He has and will have no problems breaking the Web if Microsoft is the only one left standing.

    Now, that being said, there are only two things that Eich et al need to worry about concerning ECMAScript:
    1. Don't break anything that works right now.
    2. Don't break anything that works right now.

    One of the reasons I no longer develop with Microsoft is because I got goddamn sick and tired of rewriting everything whenever Microsoft released a new version. That includes Word and Excel macros, web pages that were too IE specific, Visual C++ code, etc, etc. If ECMAScript causes problems with existing JavaScript that works right now, today, why then I will be looking for another tool. And it probably won't have much to do with Microsoft's solutions (fool me once, etc) OR JavaScript (fool me once, etc).

    Do any of these guys know what the hell 'standard' means anymore?

  55. correction by rucs_hack · · Score: 1

    I actually wrote (Not Vista, that's a sack of crap, no matter who wrote it), but I used the Not sign instead of the word, and for some reason it's gone from my post

    1. Re:correction by Coniptor · · Score: 1

      Slashdot edits out characters related to programming/web development of any kind with exception to some basic html tag stuff for security reasons.

      However your point was made just the same. =)

  56. Platform specific Javascript by asc99c · · Score: 1

    Just browsing comments, a lot of people think Javascript is pretty horrible. I've developed a few internal web-based tools and always managed to produce nice looking Javascript that does a good job. Unless you try and use IE with it. I develop with Firefox as I can use Firebug to debug through the problems that crop up.

    This last week I've been doing some javascript for a commercial product and it all fell apart in testing with IE. IE worked for two or three screens refreshed dynamically with Javascript - just enough for me to decide hey! cross-platform! But after that it went mental. I've had to change loads of stuff with heavy reference to a similar application that was tested and proven - the main problem being that there's no useful debugging tools I could find for IE and so much stuff just doesn't quite work.

    Javascript is quite a nice language, it just has a poor implementation that you basically have to work around unless you're in the position to impose Firefox on the users.

    1. Re:Platform specific Javascript by radarsat1 · · Score: 1

      I find JavaScript to be a _very_ nice language. The way it's completely prototype-driven is really interesting, and took a while to get my head around. It seems people remain quite frustrated with it, and I can understand, due to all the incompatibilities between browsers. If you actually use JavaScript in a more well-defined environment you'll see the beauty of it. (For example, I've been doing JS code for Max/MSP lately.)

      But to all the people commenting that they are "with MS on this one", please keep this in mind: To a large degree, MS is the VERY REASON you hate JavaScript so much. JS itself is fine -- it's IE's terrible non-standard insanity that keeps you going crazy as web developers. So why you would now get behind them in designing yet another ridiculous mind-trap is beyond me. That anyone would trust them to do this properly is totally insane, seeing as they are the very reason there's a problem in the first place. Remember the term "JScript"? That was MS's idea of implementing, but NOT QUITE completely implementing, JavaScript, for no reason other than to PISS YOU OFF.

      Just remember these facts when you think about MS redesigning the web with its own languages: THEY broke the standards (purposely), THEY refused to put out an upgrade for IE6's crappy implementation for YEARS, and THEY are to blame for web design being such a difficult job. With cross-browser libraries like Prototype and JQuery things are finally getting easier to do on the web, so let's not go breaking it again, okay?

    2. Re:Platform specific Javascript by Anonymous Coward · · Score: 0

      Honestly I think all the people complaining about Microsoft's Javascript implementation are simply confused about what is Javascript and what is not. The MS Javascript implementation is not bad and there are very few areas of incompatibility that relate to the language itself.

      Now, if you instead talk about the DOM then yes you are into a whole new world of compatibility problems. But this is solvable using any one of the plethora of Javascript libraries that abstract this away so that you generally do not need to deal with this problem either if you are smart / experienced.

      So please stop criticizing Microsoft for their Javascript which is really NOT a problem and let's focus on the BROWSER and DOM compatibility problems which are the real game here.

  57. Since when... by Anonymous Coward · · Score: 0

    does anybody else give a runny shit what Microsoft thinks? Do we have to ask their permission every time we release a new browser now?

    Advance Javascript, open the web, put out new browsers, implement CSS3, and let wet-blanket Microsoft take its bat and ball and go home like it always does. They'll just punish their own users by keeping them in the Dark Ages. The rest of us will go on enjoying the rewards of technology innovation. As usual.

    Yeah, I know, I'm an anonymous troll. But it's the frank truth.

    1. Re:Since when... by Billly+Gates · · Score: 0

      Unfortunately they still own %90 of the browser market with everyone else fighting for the other %10.

      So yes ms can stagnate the whole industry to suite its own needs. Thats what monopolies do.

    2. Re:Since when... by pmontra · · Score: 1
    3. Re:Since when... by Billly+Gates · · Score: 1

      Thats not accurate as w3schools is a site for those who want to learn html and probably half use both browsers for compatibility.

      Grandma uses what comes with her computer and other sites its more like 90/10.

  58. Microsoft appears to be spreading FUD by Geof · · Score: 4, Insightful

    Your criticisms seem to be aimed at HTML and CSS, and at attempts to make up for their failings with Javascript toolkits. What Mozilla is pushing here is significant enhancement to Javascript in order to remedy many of its failings while maintaining backward compatibility. Microsoft, on the other hand, is trying to limit changes to the language. According to Eich, Microsoft is criticizing the ES4 proposal without offering concrete alternatives. Instead, he says, they are developing their own language in secret.

    I think Javascript's a pretty good language. Certainly it's not perfect - few languages are. PHP, C++ and Perl spring to mind as being particularly flawed, but they have been indispensable nonetheless. Javascript has a huge installed base of runtimes and many programmers are familiar with it (so there's lots of bad code, which may be why JS has such a bad rep). We know how conservative most developers are about learning new languages (especially ones that don't look like C or BASIC), so there would be a significant cost and risk to trying to switch horses from Javascript to something else. Browser compatibility is another matter altogether - but we know who is causing the trouble there.

    Javascript is practical and flexible; the main problems I have encountered are weak support for OO and larger projects - problems the ES4 effort appears to be trying to address. Microsoft's argument is for making minimal changes in favor of some unknown future language. If they really are working on that language in secret, and are able to complete it while Javascript is mired in controversy, the outcome is unlikely to be good for the rest of us.

    1. Re:Microsoft appears to be spreading FUD by Blakey+Rat · · Score: 3, Insightful

      The current Javascript has a lot of bad bits, though.

      How come IE uses "innerText" and Firefox uses "textContent"? Right there is a little compatibility function nearly every single Javascript in the world needs to write to work correctly.

      Why is there no "GetElementsByClassName?" Another function nearly every Javascript needs.

      How come the various "geometry"-returning functions have some baffling results? How come it's so hard to answer basic questions like, "did the user scroll to the bottom of the webpage?" What the hell is a "userAgent" anyway? Does the measure of it include toolbars? Status bar? How come the screen functions return different results for IE and Firefox on multiple-monitor systems? How come the screen functions don't even *support* multiple-monitor systems?

      Why does Firefox insert blank text nodes into the DOM while IE doesn't?

      How come my Javascript can't tell if a TextArea has text selected or not?

      How come the internationalization features suck so much?

      Why does "XMLHttpRequest" have such a strange name? Are acronyms supposed to be in all-caps or not, because that function shows it both ways.

      There are a hundred problems, not necessarily with Javascript, but with Javascript's interaction with the DOM and browser. I think it's clear that both IE and Mozilla are right in that *something* needs to be done. Whether it's a new language or a new direction for JS, I dunno. (I like the language itself, for the record.)

    2. Re:Microsoft appears to be spreading FUD by protohiro1 · · Score: 2, Informative

      As you noted, your issues are with the DOM apis, not the language. ES4 solves NONE of these problems and instead focuses on make JS more like Java. What benefit do we get from ES4? Its slightly easier to develop in? Yay, but that certainly doesn't do anything about the real issues: * Same origin security is broken and just makes it hard to develop mashup style aps * JS/DOM as implemented now is inherently insecure * Event listeners and dom interaction is memory hungry and slow * Regex implementation sucks * No good vector support (canvas tag may solve this) * No native JSON and many more... And it instead bloats the language, will slow down the runtime, increase the size of scripts and essentially waste everyones time.

      --
      Sig removed because it was obnoxious
    3. Re:Microsoft appears to be spreading FUD by protohiro1 · · Score: 1

      Namespaces would be nice. Formal java-style oop? Not really necessary and what does it really buy us? The ms thing is clouding the issue, a lot of web developers (like Douglas Crockford) are really unhappy with ES4 as it looks today, and that has nothing to do with MS. ES4 should not be adopted.

      --
      Sig removed because it was obnoxious
    4. Re:Microsoft appears to be spreading FUD by zoips · · Score: 1

      * No native JSON and many more...

      Dude, wait what? You realize that JSON (JavaScript Object Notation) is nothing more than Javascript object and array literal syntax? JSON is Javascript. You can't get any more native than that. Douglas Crockford would probably be pissed you didn't know this.

      The only real gripe you can possibly have is that eval()'ing JSON in Javascript is inherently unsafe, as is any use of eval(), but if that's your gripe, you need to be a bit less disingenuous (or at least get your facts straight). Write your own JSON parser in Javascript if you don't want to take the lazy man's out and use eval(), it'll take you all of 15 minutes.

    5. Re:Microsoft appears to be spreading FUD by hendridm · · Score: 1

      Instead, he says, they are developing their own language in secret.

      Let's be fair, here. They did a pretty good job with VBscript.

    6. Re:Microsoft appears to be spreading FUD by Bitsy+Boffin · · Score: 1

      The current Javascript has a lot of bad bits, though.
      [... snip ...]
      There are a hundred problems, not necessarily with Javascript, but with Javascript's interaction with the DOM and browser.


      You just said it yourself. All of the issues you pointed out there are nothing to do with the language, that's all API, it's all libraries. How would developing a new language solve any of these?

      This is in fact the classical reason that Javascript has such a bad name, because so many so called developers are incapable of differentiating between library and language, they say "man, javascript is so crap, how come IE and Gecko don't give me the same dimensions here!", when that is nothing to do with the language, and everything to do with the implementation of the libraries.

      It's the libraries that need to be fixed in general, not the language, change it if you want, but it's not going to resolve any of those problems.
      --
      NZ Electronics Enthusiasts: Check out my Trade Me Listings
    7. Re:Microsoft appears to be spreading FUD by Myen · · Score: 1

      Actually, ES4 does do JSON (here, or whatever spec you can actually find). Without evaluating things, because eval() sucks. See also overview PDF, top of page 39.

      (Yes, I find it horribly difficult to figure out what they actually agree on, which makes trying to figure things our really hard)

    8. Re:Microsoft appears to be spreading FUD by Zphbeeblbrox · · Score: 1

      Exactly!!! All the complaints are API specific not language specific. Maybe what should be going on is a better set of DOM API's and SVG and X-Form support that doesn't suck?

      --
      If you see spelling or grammatical errors don't blame me. I tried to preview but IE here at work borked the CSS
    9. Re:Microsoft appears to be spreading FUD by protohiro1 · · Score: 1
      --
      Sig removed because it was obnoxious
  59. Re:Don't worry too much by Anonymous Coward · · Score: 0

    i'm curious, how silverlight interact with the DOM model, html elements, enable/disable inputs?

  60. MOD PARENT UP by IGnatius+T+Foobar · · Score: 3, Insightful

    That's exactly it. Some people are fond of saying "You know, it was actually Microsoft who invented AJAX because they had XmlHttpRequest() first" but if Microsoft had known that they'd be enabling a general-purpose platform for application delivery -- one that doesn't require Win32, or even a full desktop computer at all -- they'd have found another way or not done it at all.

    --
    Tired of FB/Google censorship? Visit UNCENSORED!
    1. Re:MOD PARENT UP by man_of_mr_e · · Score: 1

      Really? Then explain why Microsoft adapted XmlHttpRequest() to be a native function call, rather than an ActiveX object in IE7. They did this to improve compatibility with Mozilla, Safari and Opera. If MS really didn't want XmlHttpRequest(), they would have phased it out in IE7, since it was never part of the browser itself.

    2. Re:MOD PARENT UP by IGnatius+T+Foobar · · Score: 1

      Then explain why Microsoft adapted XmlHttpRequest() to be a native function call, rather than an ActiveX object in IE7.
      Simple. Even Microsoft knows that the AJAX genie cannot be put back in the bottle at this point, so they might as well improve performance as much as they can before even more people abandon IE. If Microsoft suddenly discontinued XmlHttpRequest() in IE7, they'd lose pretty much everyone to Firefox and Opera, because everyone depends on that functionality now.
      --
      Tired of FB/Google censorship? Visit UNCENSORED!
  61. Platform Threat by codepunk · · Score: 0, Redundant

    Of course MS does not want to upgrade java script, it is a threat to their platform.

    --


    Got Code?
  62. Sitting ducks by Anonymous Coward · · Score: 0

    Fact is, noone can make a progress until they both sit down and agree. Bot Microsoft and Mozilla have a huge market share, so noone will make a page that doesn't work in either browser (exception might be that Silverlight thing or anything available as a plugin).

    So yes, they should define a new language or a new versoin of a language, whatever, it's engine of course shouldn't mix with old implementation not to break everything. So in a way I favor MS's approach, unless there will be a HUGE effort to mantain separate Javascript engine after it goes into the maintenance mode (and especially when most web sites start using new standard).

  63. ES4 *is* backward compatible by Geof · · Score: 1

    The ECMAScript 4 is backward compatible. Brendan Eich:

    Two languages not really credible for small systems; backwards compatibility within growth is a better choice. . . . we are maintaining compatibility.

  64. Re:Flash-bashing equivalent by larry+bagina · · Score: 1

    my favorite is the jackass that replaces an input type="submit" with an input type="button" and adds a keydown event handler to submit the form when return is pressed and an onclick event handler to submit the form when the button is clicked.

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

  65. Re:MS Trying to undo the Outlook Web Access Mistak by mattgreen · · Score: 1

    They are desperately trying to put the web back in the original box they intended it to be in which is people without access to the latest version of the full Win32 API, and an X86 processor will be denied access to all online content. Care to cite your sources on this? I'm curious why they care so much about the processor type.
  66. Re:To me, this seems vaguely pointless for browser by BlackTachyon29 · · Score: 1

    Hey thats not true, my 386 16mhz router is still running true protected mode x86 instructions right on the hardware.

  67. Re:NO -- Microsoft does not have a point by markjl · · Score: 1

    You seem to have some facts wrong, so your viewpoints are off.

    MicroSoft has not released Silverlight for Linux, go look at the downloads page (/silverlight/downloads.aspx). They probably never will.

    Miguel de Icaza of Mono/GNOME/Novell fame has led the effort to make a Linux implementation called MoonLight (http://www.mono-project.com/Moonlight). Supposedly, Microsoft will not sue for the infringement of their intellectual property, http://www.microsoft.com/interop/msnovellcollab/moonlight.mspx -- but that is a promise, not a license, so those are legally tenuous grounds to walk on. If they were serious, then they would grant a license. The problem is that it would have to be an open source license.

    Do not delude yourself or others: Microsoft sees Linux as a threat to their OS. Microsoft uses Silverlight to control Internet user interfaces and fend off adoption of Adobe/Macromedia's Flash, Java applets, and the web standard of SVG, and even AJAX/HTML/CSS as well as all other UIs.

    JavaScript has always operated in a sandbox: so I disagree about your notion of "developed in a trusting world" because any compromise is lethal, no matter what the point. Designing a sandbox around JavaScript is pragmatic security design -- much like Flash, Java applets, and much unlike ActiveX's origins. So if you've ignored the security patches of JavaScript (to keep it secure) and if you've never benefited from an AJAX web site or HTML form validation, then I can forgive your comment.

    Of course, people who do not design for graceful degradation of any technology in a web page might have caused your comments, but the web benefits from dynamic applications in web pages: there's no installation necessary.

    You can keep your HTML 1.0 web circa 1993 -- I remember it fondly, because nostalgia wins the truthiness argument. I'm happier with the possibilities of web applications based on open standards delivered by the Internet versus proprietary OS applications because it fosters competition and advancement in the market.

    --
    My opinions are my own, but you may share them!
  68. I have to agree with MS here by Rich · · Score: 1

    I have to agree with microsoft here, some of the suggestions that were made for the ES4 standard were quite frankly mad. The current draft has removed some of the more ridiculous ideas like the adding in the E4X support which involved introducing new syntax for dealing with XML. I don't think that adding domain specific features like this to the core language makes sense at all in a language that is general purpose. The spec still seems to suggest trying to form some sort of hybrid of prototype and class based OO which I suspect will lead to both bad implementations and unmaintainable code. The ES4 group also seems to have decided that simply gluing on features from python is a good idea (for example list comprehensions), I like python but I'm not sure that this is the best approach to extending javascript.

    I think that some of the work the WHAT WG group have done is actually much closer to what the ES4 group should be looking at - making a standard library that is richer. For example the HTML 5 draft has an API for SQL that could easily be used as the basis for a new standard object in JS.

  69. Why bother? by Midnight+Thunder · · Score: 1

    Unless a real good reason can be shown for creating yet another programming or scripting language, then we should stick with what we have. If new functionality is needed, then why not add some new standardised object type.

    I should note that I am always sceptical when Microsoft says we need a new scripting language, because they usually try to keep control of it and make it another reason to stay with Windows. This is not to say other companies have not tried to control the programming languages they have created, but the reason Microsoft's approach usually annoys me is because of their lack luster cross-platform support.

    All this said and done, a few things could be improved in Javascript, including
        - ability to have typed methods
        - ability to have multiple methods with the same name, but different signature

    One thing that needs to be noted in all this is that Javascript is a scripting language and not an excuse to shove the whole web site logic onto the client side.

    --
    Jumpstart the tartan drive.
  70. Open web by Matthieu+Araman · · Score: 1

    Brendan is completely right.
    This is all about open web.
    Browser technology was somehow lagging behind what's used (ie flash...) and need to improve for the future web.
    HTML5 (video, canvas ..), SVG, new Javascript version will make for a new generation of browser.
    IE will probably try it the proprietary way.(at least at first)
    Concerning Javascript, it will allow complex site to better work with modern browsers (Mozilla based, Opera, Safari/webkit) providing a better user experience and security, while still "just work" for IE via a compatibility layer...(until MS somehow catch up, which they have already done in the past)
    This will be interesting to see how the situation evolve in the mid term when some of this technology starts to be available in more browsers (ie in one/two years)

  71. very Microsoft - very anti-evolution by victorvodka · · Score: 1

    Microsoft doesn't really believe in evolution when it comes to development environments and UIs, preferring radical departures from the past. I'm not surprised that instead of adding features to Javascript, they'd prefer a whole new language. It fits their model, since radical changes require radical reeducation, a service in which they make money. This is why they didn't add the features ASP needed but instead blew it away with .NET. This is why Vista fucks with things that worked fine in XP - just so they could cause feature churn and sell more instruction. Contrast this to open source environments, which change gradually and incrementally. If you knew Unix in 1978, chances are you'll do okay on Linux's command line. If you knew PHP in 1998, you also know it today.

    --

    The flag just makes more sense than the constitution. - Judas Gutenberg

  72. Re:NO -- Microsoft does not have a point by secPM_MS · · Score: 1
    You are correct about the Linux implementation. I was thinking of the Moonlight implementation, which is rather on a par with the Mono effort to duplicate CLR.

    I would be rather less paranoid than you. Microsoft is rapidly moving to a service and web model. Not very happily, but moving. When there is a reasonable user base in Linux and a business model to make money, they will follow the users. They don't want to leave the customer with no choice but Google and Adobe, neither of whom are any more magnamious that Microsoft.

    The market is focused upon neat features and gee-whiz issues. Doing this with the OS and applications is what both made Microsoft sucessful and dug them into the security hole they are trying to work their way out of. I am an old fart and remember one of the old security dictums - Thou shall not mix data and executables. Scripting does so. It makes lots of neat features possible, but it also significantly reduces trust. For certain applications, such as banking, or high value financial transactions, trust is far more important to me than features. For others, the neatness may be more important.

    I am actually buying a new computer so that the computer I use for my banking can be hardened and restricted and will not run any of my children's games or web snap-ins. It will be running Vista with all users running as normal users, sidebar disabled, and IE7 will be running in enhanced security mode.

    I allow my kids machines to run flash and javascript because there is nothing valuable on them and neither my wife or I use them.

  73. More Microsoft browser history by Simon · · Score: 1

    XMLHttpRequest comes from the golden age of the browser wars when the WWW was the hot new thing which was set to change the industry, and the head of this new company called Netscape was claiming that the WWW would "reduce Windows to an unimportant collection of slightly buggy device drivers". The web was new and out of Microsoft's control. They had no choice but to tackle it head on and gain control of the browser market any way possible, even by bundling it Windows 98, which got them into antitrust trouble with the US government. It was Netscape vs Microsoft in a features arms race until Microsoft finally gained control and market share. Netscape then opted to more or less leave the browser war. With the browser war won, the stream of features stopped and after IE 6 the stream of new innovative browsers stopped to. This effectively froze the functionality of the web browser as a platform for years to come, stopping it from encroaching on any more desktop territory.

    It is only relatively recently with IE 7 that the world learnt that Microsoft's Internet Explorer team even existed still. Despite the popularity of Web 2.0 style graphic effects and GUIs, Microsoft still doesn't dare extend their browser and the web platform with more functionality. Any new functionality must come in a standard that Microsoft can completely control, Silverlight that is. It is kind of ironic that the features that Microsoft brought out to try to win the first browser war are also powering Web 2.0 sites all these years later. Microsoft also gave us "design mode", WYSIWYG style editting functionality in a browser too, by the way.

    This concludes the history lesson for today.

    (I didn't know about Outlook web access. Very interesting!)

    --
    Simon

  74. Re:MS Trying to undo the Outlook Web Access Mistak by Delifisek · · Score: 1

    Absolutely, they shoot themselves with that XMLHttpRequest...

    They loose every inch of web business sector. No Browser, No HTTP Server, No Search Engine, No multimedia format (flash won the war).

    And now they try to f*ck up the current axax movement with that silverlight.

    No thanks...

    --
    [My english is better than most other people's Turkish, so please point out mistakes politely. Thank you.]
  75. OT: Communism by mr_mischief · · Score: 1

    This is a bit off the topic, but communism actually can work reasonably well when it's practiced on a small scale by willing participants who all know one another directly. It tends to fall apart when strangers from across wide areas with different values, resources, and interests are forced into it. It also tends to fall apart when combined with idealized notions the participants don't really buy into, like mutually interchangeable sexual partners, no labor-saving devices, or unusual cult-like religions.

    Small self-sufficient communes function about as well as large extended families do. You piss some people off, and they get over it. They piss you off, and you get over it. Some people leave and stop talking to the group. The Amish live in a nearly communist situation, and they're just fine. They have buy-in from their members.

    There's a commune not far from where I live of non-Amish Protestant Christians who interact as capitalists with the outside but share the wealth internally. They have a dairy, a restaurant, a few stores, and a few other things supporting their church, school, and faith-centered drug rehab center. There's a communal foster home for troubled teens near here, too. They have a school, several homes, farmland, livestock, and accept donations. The foster parents take care of their own kids and the foster kids, and the money and farm work is all shared among the households. It works, because that's the way they all want it and the struggles are shared among them.

    The Soviet Union, for example, tried to combine by force several nations of people with their own languages, cultures, natural resource differences, religions, and industries. A restaurant manager in Minsk didn't see the struggles of a construction worker in Vladivostok, and the two likely didn't agree to be communist/socialist in the first place. It's a very different type of thing. The scale's different. The agreement is different or nonexistent. The common bonds outside the economics are thinner. It's just not the sort of thing that's going to stretch to that situation. Anything you're forcing millions of people to do is not likely to gain much appreciation for the perpetrators or their ideals.

    Capitalism, though, is a very naturalistic market type. You want something, and you need to do something to get it. You give something up in order to get it, or you decide it's not worth the trouble. There's no enlightened common interest necessary. In fact, enlightened self-interest isn't always a big hit either. Capitalism can largely function on pure greed, even though helping yourself through helping others is more sustainable. That is the reason capitalism is so successful -- it's simple, and it doesn't overestimate the goodwill of man for his fellows. The funny thing is, with computer modeling and research into complexity and chaos theory, there's just now more to learn about how and why capitalism works than ever. It's like the KISS principal, genetic algorithms, neural nets, network effects, and feedback loops all applied to moving goods and services around in the real world. We're just starting to understand the value of those methods in software, but the markets have been doing it for centuries with decent results.

    Now, if we really want to help people in poor countries, we should seriously look into getting education, skills, and capital investment up. That way they can participate in capitalism. Unfortunately, capitalists in relatively peaceful and secure areas don't invest much in areas where their assets will just be burned, seized by warlords, or looted. Getting those areas that lack investment stable is a prerequisite for getting investment into them, but getting investment into them is also a prerequisite for getting them prosperous and therefore stable. Gradual investment in progressively more market-centered areas is probably the best route. Start with water, food and medicine. Then do housing, utilities, and schools. Then transportation, security, and local self-sufficiency. Then big business inve

    1. Re:OT: Communism by Schraegstrichpunkt · · Score: 1

      cult-like religions

      So, any of them?

  76. My first grief with javascript by lagfest · · Score: 1

    was that it used the same operator for concatenation and addition. That's just all kinds of stupid for a loosely typed language.

  77. Re:Flash-bashing equivalent by calebt3 · · Score: 1

    Plus since it has a tiny market share it's very unlikely anyone will bother to target it. So why are you trying to increase it's market share?
  78. I would... by realdodgeman · · Score: 1

    I would like to use MS' idea, but have somebody, anybody, else implement it. A new language is okay, as long as Microsoft stays out of the process of making it, since they have extreme interest in creating vendor lock-in.

  79. Re:To me, this seems vaguely pointless for browser by mrsbrisby · · Score: 1

    Incidentally, the static typing is what makes fancy method/member completion in IDEs like Eclipse/Netbeans possible too. You'll not be seeing tools like that for JavaScript any time soon.
    You're thinking of explicit typing, not static typing, and you're still wrong because Smalltalk gets fancy method/member completion and it doesn't have static nor explicit typing.
  80. Web is a black hole by porneL · · Score: 1

    The problem is once something becomes (even de-facto) standard on the web, it will never die.

    It doesn't matter if the standard is crappy or not. Look at all leftovers from browser wars (DOM0, quirky box-model, framesets, all now-deprecated HTML elements) -- browsers still must have first-class support for all that garbage.

    Even if you add a brand new, super-cool language with excellent security model, Javascript won't die. Revolutions don't work on the web (see how far application/xhtml+xml has got and how well XHTML2 is doing). Browsers will just end up with new things to implement, new incompatibilities, more code to maintain and larger attack surface.

    1. Re:Web is a black hole by Fred_A · · Score: 1

      The problem is once something becomes (even de-facto) standard on the web, it will never die. <blink>did.

      --

      May contain traces of nut.
      Made from the freshest electrons.
  81. Of course Microsoft doesn't want to update jscript by Billly+Gates · · Score: 1

    They want people to use windows and not the web for applications. Google apps and java scare ms to death. People might actually ... gasp .. not have to use windows.

    IE stopped innovating the second netscape became irrelevant with the exceptions of security fixes and anti phishing schemes with IE 7. Now that the web is no longer a threat the focus is back on the proprietary windows desktop but this obnoxious firefox thing happened. (In microsoft's eyes)

    Also javascript is viewing as a page source so even if ms came out with a proprietary api it would not take long before it could be reverse engineered. The push to .Net is a way to fix this by having everything done on the server end.

  82. If ron paul demands a handout for his services.. by Anonymous Coward · · Score: 0

    then i completely agree

  83. Off your meds? by Anonymous Coward · · Score: 0

    Trolls here aren't supposed to make witty comments but I salute you none the less.

  84. Javascript is a browser born language right? by 20oz · · Score: 1

    OK, I fully admit the history of javascript is something I'm not extremely knowledgeable about. I also am aware people are using javascript outside of the browser these days. However, since to date, javascript is primarily a browser based language, why don't they use some of the fundamentals that the browsers use? Simply, make the new version (and future versions) declare their version to the browser, and the browser can then handle how to run. Microsoft can treat it like a new language, Mozilla can handle it they way they want to, and people running older browsers will be oblivious to it all (as long as however it identifies itself doesn't break the previous version). So the new version would have something like //ECMAScriptv4.00 at the top of every line of javascript that needs the new interpreter. True, we spend more bandwidth, but in todays age of gzip compression everywhere, is it really going to matter?

  85. STOP OVERSTATING MICROSOFT'S CONTRIBUTION by ergo98 · · Score: 5, Insightful

    but if Microsoft had known that they'd be enabling a general-purpose platform for application delivery -- one that doesn't require Win32, or even a full desktop computer at all -- they'd have found another way or not done it at all

    Firstly, at the time there were a huge range of "safe-for-scripting" ActiveX objects that could be created in IE. This was Microsoft's way of clutching every corporate shop that dared to use one in a death grip, instantly destroying their potential to have the versatility that a web application would normally bring. XmlHttp, found in the MSXML library, was just another safe-for-scripting object. At the time the web curious were already exploring a number of ways to do asynchronous calls, most commonly being hidden IFRAME updates, but there were a myriad of other options, including plenty of third-party XmlHttp type components, and even some Java Applet techniques for doing this.

    This was a hugely growing need, and while Netscape was beaten to the ground and slowly regrouping Microsoft seemed to lead by default.

    The point, I suppose, is that the invention of "AJAX" was absolutely, positively inevitable. Microsoft's influence in those early days is entirely the result of its monopoly, not its technical leadership.
  86. This feels weird, I'm taking MS's side by adrianbaugh · · Score: 1

    I have to say, I agree with Microsoft on this one. No doubt they have some sinister motive that I'm missing, but on the technical point I'd rather not see major changes to javascript. Radical upgrades to well-used languages are rarely an improvement as they have a habit of breaking so much existing code (you know the languages I'm on about...) Far better, in my opinion, to let javascript keep doing what it does and put all the new features into a separate language. It needn't add (runtime) bloat to browsers if the interpreters are modular, loaded as needed; and these days who cares about a few extra megabytes of hard disk bloat?

    --
    "'I pass the test,' she said. 'I will diminish, and go into the West, and remain Galadriel.'"
    - JRR Tolkien.
  87. Javascript or ECMAscript are BOTH EVIL! by bradbury · · Score: 0

    The purpose of the HTTP protocol on the WWW is to DISPLAY pages composed of images and text.
    It never had to be any more complex than that (and wasn't until Javascript reared its ugly head).

    Now, many web sites are directly or indirectly seeking to take control of your machine (google-analytics comes to mind) by downloading programs onto your computer and running them through your web browser.

    Its *My computer*. Its *My memory*. Its *My CPU time*.
    Thou shalt not use it (or steal it) without my previous permission [1].

    And that is why my primary Web browser is Firefox with NoScript enabled for all sites except a few, such as gmail, where javascript is actually required.

    It is for these reasons that I view scripting languages attached to web pages as EVIL. Only when all scripting applications say "may I run on your machine (and this is what I will do)" will one have an acceptable paradigm.

    1. I would love to see a class action suit by people running unused CPU cycle programs, e.g. Folding@Home, SETI@Home (which is useless), and the many other @Home derivatives against web sites, perhaps even Google, for downloading "programs" which will consume memory and CPU time *without* my permission.

    1. Re:Javascript or ECMAscript are BOTH EVIL! by Anonymous Coward · · Score: 0

      Well, it's 2007. You know where your road goes, right? You will be locked out of an ever-increasing fraction of the internet unless you allow scripting.

      It's noticeable even now, how many sites are not usable without scripting enabled. In 5 years, it'll be many more.

      In 10, you won't be able to bank or shop online without a computer that supports trusted computing. In 15, your ISP might not offer you a connection without a trusted system.

      You can't halt progress by refusing to keep up with the times. The world moves on, and it cares not a whit whether it leaves you behind.

  88. Not just that... by ShatteredArm · · Score: 1

    It might make enterprise development easier if you're forcing users to have a certain browser platform available, but it will make extranet web development an even bigger nightmare.

    It's bad enough as it is already:
    if(browserSupportsPlatformA)
        doSomethingThatBrowserSupports();
    else if(broswerSupportsPlatformB)
        doTheSameThingButInADifferentWay();
    else
        doSomeFallbackCodeSoSiteIsntTotallyUnusable();

    And then you'd have to somehow write fallback code in a different scripting language in case one scripting language is completely unsupported.

    It's bad enough as it is. And you know exactly what will happen: web sites will be built for only two browsers (maybe three if you're extra lucky), so you have no choice but to have those browsers installed, even if you hate them, while the browsers (such as Opera) that actually *follow the correct standards* are left out because they don't render websites as expected because those websites are built to suit Microsoft's and Mozilla's deviant specifications.

    The whole browser architecture we have is absurd. Web development is almost like having to write XML files that are deserializable in two or three different XML schemas. The JavaScript DOM is at least common enough so that you can easily go to the W3C website and quickly see what you can do in all three or four major browsers... The last thing we need is less compatibility.

  89. I agree by Yold · · Score: 2, Interesting

    I learned to program with VB, and still think its an acceptable language, and I agree with you 100%. Newlines mark the end of statements unless you add a '_', you Dim As, or just Dim (strongly typed or not, wtf?), and thats all I really can remember.

    As someone who has written a 1000+ line AJAX app in the last 6 months, I can tell you that cross-browser incompatibilies already make programming javascript a bitch. I can't remember too many specifics, but I know that mozilla javascript implements arrays slightly different than IE, and it was a pain in the arse to CONSTANTLY patch around DOM issues. The breakdown of my time was probably spent 20% design, 20% code, 60% patching for IE.

  90. Actually design by commitee does work.. by Anonymous Coward · · Score: 1, Insightful

    For fairly well-defined problems. GSM isn't a great cell phone standard, but it has allowed European cell phone manufacturers to take over the global marketplace while American cell phone companies with splintered standards have had to play catch up for more than a decade now.

    C++ is an example of horrible design by committee, with ever shifting basic functionality and over complexity. But the updates to C (by committee) have been very reasonable and useful. Germany's design by committee of power plugs has been great for Europe, and has even taken over Britain's mishmash of plugs that has been a plague and a bane to the folks of the island. The metric system has worked out pretty well for everyone.

    When the problem is old and simple, committees do a great job of explicitly laying out the pre-existing consensus. When the problem is new and interesting, with no clear solution, committees produce a self-conflicting hodge-podge solution that is always behind the times.

    It's not necessarily post-facto, but just not innovative. They're not the same thing. I'm not sure how much "innovation" is really needed for the next generation of js. I'd hope that the problems and their technical solutions are pretty clear by now, and just implementation and standardization are needed. If that's the case, design-by-committee is probably the best thing that could happen.

  91. Um... hello... I know it sounds wierd, but go MS! by Evets · · Score: 1

    Sounds like a lot of people are addressing this from the anti-MS, pro-Mozilla Foundation standpoint.

    The next version of ECMA Script will break just about every piece of legacy javascript. That's a decade of history and development in the crapper. People have just begun to release real and functional javascript libraries that open up a whole world of opportunities and going with a new standard not only destroys those libraries but it puts a serious hamper on the evolution of the web in general.

    Even if we throw in a tag to make legacy javascript viable, every legacy page out there would have to be updated - meaning all of those abandoned or hardly maintained web sites with tons of useful information are going to be broken - so instead we'll have to wade through 200 word ad filled pages looking for the information we need.

    Re-implementing javascript breaks the web as we know it. As such, it is a bad idea. If you want to extend the experience, implement the new language as a new alternative language - like VBScript.

    How would you all be reacting if there was talk about re-implementing C or heaven forbid Ruby.

  92. Microsoft tricks by m2943 · · Score: 1

    It's pretty clear why Microsoft wants a new language: they think they can get away with designing it and imposing it on the world, after patenting it and making one of their bogus covenants.

    ECMAScript 4 is a nice language, and a good evolutionary development from the current version of JavaScript. And if Microsoft wishes to, they can view ECMAScript 4 as a "new language" too; we can have bold old and new JavaScript in the same browser.

  93. Seriously, MS has it right by compupc1 · · Score: 2, Insightful

    I have to agree with MS on this one. A radical update to Javacript has the potential to break more than I would care to think about. Major web applications can take months to simply test and years to design and implement! Major platform changes of this type are an unacceptable risk in the enterprise setting. Now, I fully agree that JScript is a horrible and broken implementation of the ECMAScript standard, but let's face it: JScript's own problems aside, Javascript as a language is not acceptable given what people are trying to do with the web. It was meant to provide limited dynamic capabilities to mostly static information delivery. That was yesterday, now let's take a serious look at today. I'm sorry if I'm offending any scripting fanboys, but weak typing, the lack of threading, the lack on non-prototypical OO features, the lack of a serious class library (including real data scructures), etc. all get in the way of delivering truly powerful client/server apps.

    As I view it, casual web browsing and using a large-scale web application are fundamentally two different things, and demand two different approaches to development. Let ECMAScript/JScript/etc. stick around; it's sufficient for small-scale or casual needs. But if we're really talking about delivering large-scale, complex applications over the web, Javascript costs countless hours of productivity, and does limit the potential for what web applications might be able to deliver to users.

    I'm completely in favor of creating a new language to meet the needs of tomorrow's web applications, provided that Microsoft and open source vendors work together in an open and honest fashion. This will only become a reality if all parties cooperate and make it a true standard. But on principle, yeah, Microsoft has the right idea on this one. (In my dream world, I would love to be able to deliver bytecode via HTTP, execute it in a tightly controlled sandbox, but still use the DOM as the UI delivery mechanism, but somehow I doubt that'll happen!!)

    --
    -James
    1. Re:Seriously, MS has it right by Anonymous Coward · · Score: 0
      Microsoft don't have it right, it's the same aggressive NIH syndrome that saw them clone Java. If Microsoft were really committed to interoperability and open standards, they'd fix IE with a compliant javascript engine and DOM; also adding SVG, xhtml and complete CSS2 support. Then perhaps I'll care enough about their opinion to take them seriously.

      In my dream world, I would love to be able to deliver bytecode via HTTP, execute it in a tightly controlled sandbox, but still use the DOM as the UI delivery mechanism, but somehow I doubt that'll happen!!

      I think it's a terrible idea but it is already listed as a requirement for JS3.

      weak typing,

      See the very same ECMA4 (JS2) that Microsoft are complaining about.

      lack of threading

      Concurrency is planned for JS3 (see above link).

      lack on non-prototypical OO features

      Again, see ECMA4 (JS2).

      Since most of your complaints are addressed in ECMA4 it's more likely that you don't agree with Crockford/Microsoft.
  94. While you dream by tknd · · Score: 1

    I'm having nightmares of the reincarnation of C++ into javascript. Oh the horror!

  95. Re:Flash-bashing equivalent by Anonymous Coward · · Score: 0

    Actually no, I use it to. I frikking hate JS as much as the next person.
    I'm just sick to death of seeing it posted here and it does have the flaws I mentioned.

    I am just trolling though, sorry.

  96. Microsoft vs Mozilla by eulernet · · Score: 2, Interesting

    Microsoft's dream since 10 years is to rent web applications, since it will allow them to earn more and more money.

    It's impossible to program Office with the current Javascript language.
    So, Microsoft is trying to push Silverlight (since it's its own baby based on C#).

    The battle that will result may see Microsoft's largest defeat.

    First, this is a political battle, and every opponent has to make concessions, and M$ are not good at that.
    Secondly, M$ is no more in a position to dictate how the Web should work, since the users have now a large choice of Web browsers (Safari and Firefox in particular). They still behave as if the Web was IE-centric.
    Thirdly, Microsoft imposed his OS by crushing its competitors one by one. Due to the progress of Apple and GoogleOS, it's not any more possible.

    Frankly, I don't see how Microsoft could win this battle.
    If they count on their own forces, they will fail, like they failed with Vista.
    If they expect a large developers support, they are wrong, since nobody (I mean nobody important) is supporting Silverlight.
    If they count on a miracle, I think they had their share.

    Once a technology standard will be decided, everything will depend on large Web companies, like Google.

  97. Re:MS Trying to undo the Outlook Web Access Mistak by Anonymous Coward · · Score: 0

    I'd say backwards compatibility -- it makes it easier for people to run their old DOS and Windows software.

  98. They don't eat baby penguins... by bennomatic · · Score: 1
    They're in the wrong hemisphere. They're too busy clubbing baby polar bears. I saw it with my own eyes.

    --
    The CB App. What's your 20?
  99. Re:Don't worry too much by Unnngh! · · Score: 1

    My understanding is that Silverlight replaces the DOM. It is xml markup at its core. I'm pretty sure it is like flash, embedded as an object and run by a plugin.

  100. Seems like folks are missing the point... by Anonymous Coward · · Score: 0

    Mozilla wants to extend javascript with breaking changes, but they want to stick with 'language="javascript"' which means your code will break in old updated browsers. Why?

    WTF is wrong with adding 'language="ECMAScript4"' or some such? Browsers are going to have to be updated to use the new extensions, why not just make it explicit and call it what it is, a new language?

    Jorgie

  101. Re:NO -- Microsoft does not have a point by BenoitRen · · Score: 1

    Vista? For your kids? What a horrible idea. What's wrong with Windows XP SP2? It's proven and stable. Not so with Vista.

    And why IE7? I guess you don't care about the web being open and free?

    And the computer may not have sensitive data, but I'm sure you don't want the Internet to gain another node in a botnet or to be a spam delivery node.

  102. Which side are you? by Ep0xi · · Score: 0

    "At best, we have a fundamental conflict of visions and technical values between the majority and the minority,"

    That's great since i am part of the minority which uses undocumented routines from the JS open standard. And perhaps, it is better a barely documented Mozilla's open standard, than a totally undocumented but compatible, Microsoft's closed standard.
    What bothers me is that they worry about making compatible ECMAscript 3 & 4, and there are totally undocumented, uncompatable functions betwen diferent versions of the same standard.
    Now i see it. Programming language's history, is one of my strongest know-how.

    --
    ?
  103. Re:NO -- Microsoft does not have a point by secPM_MS · · Score: 1
    The largely unknown secret about Vista is that unlike XP, it is far far easier to have a user run as a normal user than on XP. I run my kids and wife as normal users. There are some issues that they are dealing with for SP1 that I would like to see fixed, but I have found Vista to be quite stable. I am not interested in having my kids run software that requires administrative privledges. In fact, if it requires administrative privledges to run, they can't and I will uninstall it.

    IE 7 runs well and is a safe default for them to work from, particularily since they are running as limited users and don't have install rights. I like Firefox with NoScript, but I have enough knowledge to have some idea of what to enable and what to disable.

  104. Sandboxing by ChunderDownunder · · Score: 1
    Sorry for flogging a dead horse but a secure environment you allude to for web browsers has been available for a decade.

    It can host a variety of scripting languages such as Python, Ruby and, surprise, even JavaScript, as well as a couple home-grown languages such as Groovy and the purpose built JavaFX Script

    Now before you shriek in horror at the thought of a JVM running in a web browser, Sun have made a renewed commitment to the browser via the soon to be released Consumer JRE, which aims to relieve some of the bloat and provide an improved experience.

    Still no official 64 bit browser plugin but the IcedTea folks are working on a substitute.

  105. Re:NO -- Microsoft does not have a point by BenoitRen · · Score: 1

    IE 7 runs well and is a safe default for them to work from, particularily since they are running as limited users and don't have install rights. I like Firefox with NoScript, but I have enough knowledge to have some idea of what to enable and what to disable.

    That's not what I was talking about, though it does have its share of security holes.

    What I mean is that you're endorsing M$' proprietary 'standards'. If there's one browser that can be credited as holding back the web because of its wrong and vastly incomplete implementation of web standards, it's IE.

    Webmasters know what browser you use to visit their site, and it's because most of the world still uses IE that they won't get their act together and correct their shitty code (which only renders correctly on lax IE), and/or remove their stupid browser detection scripts.

    Please support open web standards and use any browser but IE.

  106. The threat of a byte code vm for webscript by Anonymous Coward · · Score: 0

    The worst threat for the web is a byte code based VM.
    That would open the door to proprietary rich web apps. Mozilla and standards must fight to block any project that would favor byte code VM adoption and keep the web "source based".

  107. The difference is? by fuliginous · · Score: 1

    Really what is the difference? A radical enough change to Javascript meaning it is in effect no longer Javascript it a new language right?

    So unless they are wanting to jump away from the whole family of language that Javascript sits in the totally new language will have lots in common, probably as much as a radical revision?

  108. .NET for client-side script by Calroth · · Score: 2, Insightful

    I can't believe that nobody's pointed this out.

    Microsoft wants a new language for client-side scripts. Just-so-coincidentally, Microsoft has this new "language" ready to go for us. It's called .NET and the CLR.

    C#, VB.NET, J#. Whatever. Microsoft wants a .NET runtime in the browser. Probably a sandboxed one that can only access the DOM and browser. But you still get all the .NET benefits, like multithreading and bytecode compilation. And all the .NET drawbacks, like you can't implement it outside of IE because it's patented from here to hell and back.

    See Silverlight? That's the tip of the iceberg.

    Open your eyes, people. This is Microsoft.

    1. Re:.NET for client-side script by StrawberryFrog · · Score: 1

      C#, VB.NET, J#. Whatever. Microsoft wants a .NET runtime in the browser. Probably a sandboxed one that can only access the DOM and browser.

      Correct, silverlight is sandboxed.

      But you still get all the .NET benefits, like multithreading and bytecode compilation.

      Also correct.

      you can't implement it outside of IE

      Incorrect. Silverlight is currently targeted at IE, firefox, Safari, with plans for Opera and Konqueror. Did you miss the articles about moonlight

      Open your eyes, people. This is Microsoft.

      Yeah, open your eyes. Discuss how Microsoft has adapted to the events of the last decade.

      --

      My Karma: ran over your Dogma
      StrawberryFrog

    2. Re:.NET for client-side script by Anonymous Coward · · Score: 0

      you can't implement it outside of IE

      Incorrect. Silverlight is currently targeted at IE, firefox, Safari, with plans for Opera and Konqueror. Did you miss the articles about moonlight Mmm, selective quoting.

      The full quote was: "you can't implement it outside of IE because it's patented from here to hell and back."

      Silverlight, like the rest of .NET, has plenty of patents. That means that any third-party implementation, as well as any non-IE implementation, only exists at Microsoft's whim. There's so much anti-competitive precedent for Microsoft that I can't believe I'm saying this.
  109. Re:MOD PARENT TROLL by Tim+C · · Score: 3, Informative

    Have you ever, honestly, been to a website that freezes Firefox?

    Yes, I have. There's a dating/forums site called plentyoffish that regularly freezes Firefox for me (at least as of 2.0.0.8). Sometimes the browser recovers quickly, sometimes it recovers slowly, sometimes I give up waiting and kill it.

  110. JavaScript != Java by WebmasterNeal · · Score: 1

    For the love of god people, stop talking about javscript and java in the same sentence! They're not the same, and not related. http://en.wikipedia.org/wiki/Javascript#History_and_naming

    --
    "During My Service In The United States Congress, I Took The Initiative In Creating The Internet." -Al Gore
  111. Re:MS Trying to undo the Outlook Web Access Mistak by Anonymous Coward · · Score: 0

    Sheesh where do these little trolls come from? When Microsoft actually innovates and does something revolutionary and good for the entire internet, it was an unwanted mistake and they want to undo it? You need some help people. Seriously.

  112. Consumer JRE by ChunderDownunder · · Score: 1
    That the Java runtime on Windows is a really crummy piece of software doesn't help.

    They're working on it.

    The crucial factor is having faith in the technology and convincing backend Java EE experts to endorse a rich client interface over markup based solutions such as struts, JSF or whatever 'framework of the month' they read about on TheServerSide.

    1. Re:Consumer JRE by Blakey+Rat · · Score: 1

      I read your link. It's good stuff, the problem is that I've had such terrible experiences with Java over the past few years, it's not enough to get me to install it. Maybe in a few more years, maybe, if sites start using it. But probably still not.

      Compare the experience to RealPlayer. Or what Adobe's rapidly doing with Adobe Reader. If your software is crappy for a long amount of time, you'll lose your audience. Even if you then proceed to fix the major problems with your software, there are a lot of people who will never come back. Java's already lost the web, I think mostly because of Sun's clunkiness and Microsoft's implemention being shucked from XP, and it's not coming back. Sorry Sun, but you had your chance, much like RealPlayer did.

  113. Re:Um... hello... I know it sounds wierd, but go M by Anonymous Coward · · Score: 1, Interesting

    Even if we throw in a tag to make legacy javascript viable, every legacy page out there would have to be updated - meaning all of those abandoned or hardly maintained web sites with tons of useful information are going to be broken
    <script type="text/javascript"> // "legacy" JavaScript code </script>

    <script type="application/ecmascript; version=4"> // new shiny </script>

    No need to change existing pages.

    How would you all be reacting if there was talk about re-implementing C
    There are many implementations of C

    or heaven forbid Ruby.
    Oh look, Ruby as well.
  114. Java for client-side script - now GPL! by ChunderDownunder · · Score: 1
    Substitute Sun for Microsoft in the above text and you get:

    Sun has new language for client-side scripts.. Just-so-coincidentally, Sun has had a variation of this new "language" available in your browser for a decade! It's called applets and the JRE.

    Python, Ruby, JavaScript, Groovy. Whatever. Sun has a Java runtime in the browser, a sandboxed one that can only access the DOM and browser. But you still get all the Java benefits, like multithreading and bytecode compilation. And all the Java benefits, like it's implemented for IE AND Firefox on Mac, Windows, Linux and Solaris. Further, it is available under the GPL, so you can port it to any other platform.

    See this web page for details of Sun's leaner faster in-browser JVM.

    1. Re:Java for client-side script - now GPL! by Calroth · · Score: 1

      Yeah. Actually what I was getting at is, this new version of JavaScript is preferable. I have nothing against Java. However, Microsoft wants 1) total domination of IE, 2) total domination of .NET, and this is a reasonable (and arguably straightforward) way of achieving this. And the scary thing is, from a technology point of view, it makes great sense.

  115. Can guys get PMS? by thethibs · · Score: 1

    Eich is acting the ass. Not just because he attacks Wilson personally and Microsoft generally without addressing Wilson's concerns, but because he's ignoring (or ignorant of) engineering rule #2: Make Before Break.

    From what I've seen of it, ES4 is pretty good. But Wilson is right: It's too big a departure and should be introduced as a new language (C/C++ anyone?). That assures we don't break a lot of web sites while ES4 stabilizes. The various Javascript instances, with no new features—only bug fixes and performance enhancements—will become rock-solid for those who don't need ES4 capability. Years from now, when all the backward compatibility bugs have been excised from ES4, we can retire Javascript. But not a moment sooner.

    --
    I'm a Programmer. That's one level above Software Engineer and one level below Engineer.
    1. Re:Can guys get PMS? by Anonymous Coward · · Score: 0
      ES4 is backwards compatible, what the hell are you talking about... forwards compatibility? The real issue appears to be that Microsoft don't want to support yet another language, they'll be free to bundle ActionMonkey (Tamarin / Spidermonkey) under the MPL if their DLR isn't up to the job.

      <script type="application/javascript;version=2.0">
      <![CDATA[
      interface doMSFTSuck{ function yes() }
       
      namespace truth="microsoft.suck" class Answer implements doMSFTSuck {
        function yes() :String {
          let selfEvidentTruth = "Microsoft are untrustworthy liars!";
          return(selfEvidentTruth);
        }
      }
      ]]>
      </script>

      Consider the following:

      From what I've seen of it, Windows vista is pretty terrible. It's too big a departure and should be introduced as a new distinct OS family apart from Windows. That assures MS don't break a lot of drivers and applications while Vista stabilizes. The various Windows instances, with no new features--only bug fixes and performance enhancements--will become rock-solid for those who don't need Vista capability. Years from now, when all the backward compatibility bugs have been excised from the Vista family, we can retire Windows. But not a moment sooner.


      Get back to us all when Microsoft see things this way and are prepared to allow linux and OSX to gobble up their market share. Otherwise fuck off!

    2. Re:Can guys get PMS? by thethibs · · Score: 1

      ES4 is backwards compatible, what the hell are you talking about

      The specification is backwards compatible. That any implementation will be bug-free backwards compatible in any short time-scale is highly unlikely; there are too many feature changes. This is an example of the difference between philosophy and engineering.

      There's a parallel in C/C++. We still have first-class C compilers in use even though most C++ compilers will handle straight C quite nicely. No one in the C development community would have been foolish enough to shred their C compilers the day after the first C++ compiler became available.

      --
      I'm a Programmer. That's one level above Software Engineer and one level below Engineer.
    3. Re:Can guys get PMS? by Anonymous Coward · · Score: 0

      > That any implementation will be bug-free backwards compatible in any short time-scale is highly unlikely;

      real world testing or speak from experience?

      > There's a parallel in C/C++

      better is c standardization through c99

      > No one in the C development community would have been foolish enough to shred their C compilers
      > the day after the first C++ compiler became available.

      no comparison agree with 2 end words of last ac

  116. Re:big surprise by bigpat · · Score: 1

    Open source and open standards doesn't mean you can't charge for your software, it means you can't milk your customers for money long past your product's usefulness.

  117. XMLHttpRequest history by DragonHawk · · Score: 1

    They added XMLHttpRequest to the browser so outlook web access would work more like a desktop app.

    From what I've read, XMLHttpRequest was originally just a COM object implementing HTTP that the MS XML library team whipped up as part of building that library. (Hence the "XML" in the name; everything in that library begins with XML.) It got added to the browser because it was built by Microsoft. Any class library is exposed to the web in MSIE if it is flagged as safe for the web, and the mindset is to expose everything (and set the kill bit later when people start exploiting it).

    I haven't seen anything substantial that says it was created for OWA. Not saying it wasn't, just that I haven't seen it.

    --

    dragonhawk@iname.microsoft.com
    I do not like Microsoft. Remove them from my email address.
  118. Re:Single implementation? by Anonymous Coward · · Score: 0

    A single language implementation can't just be plugged into both browsers?

  119. Performance, behaviors, and multimedia! by MikeFM · · Score: 1

    I think Javascript is fine for any application reasonable to do in a web browser. Rather than worry to much about features I'd rather they work on performance. Javascript performance just isn't good enough for major UI or multimedia work. In some cases threading might help with this but I don't know that it's a major factor.

    The only feature I think absolutely needs to be added to Javascript is built-in behaviors. Otherwise, If they're going to add features they should add some functionality for working with multimedia, SVG, and possibly 3D more easily - to fill the hole between current Javascript and Flash.

    Anyway, you really shouldn't be using Javascript for mouse rollovers and eye candy unless you have very specific needs that can't be done by CSS.

    As a developer that works on many websites I'll side with the creator of Javascript and stick to whatever standard he sets forth. If I have to let Microsoft do without features because they refuse to keep up then I don't mind doing so. I always try to design stuff so that if scripting doesn't work everything will still be usable anyway so it won't really harm my users to much. I already have to provide work arounds to keep IE6 and IE7 working reasonable.

    If we're going to replace Javascript then I vote for some variant of Python with built-in DOM support and strong networking features.

    Not quite part of the Javascript spec but I'd also like to see a tweak to (X)HTML so that authors can declare that script written outside the HEAD section to be ignored. This would make avoiding XSS issues so much easier and wouldn't be any issue to any developer using behaviors or similar methods to attach their JS as needed. I'd also like to see browsers allow users to select an option to disallow JS outside of the HEAD element.

    --
    At what price learning? At what cost wisdom? The price is a man's peace of mind, and the cost is his life.
  120. Albatross. by Anonymous Coward · · Score: 1, Interesting

    The man responsible for IE is in no position to lecture anyone about compatibility and security. Wilson telling the inventor of javascript to shut up and do as M$ says reminds me of this:

    Question 5) True Story? by travisd (travisd_no_spam@tubas.net)

    Was the story about you embarrassing a Microsoftie at a conference true? Specifically, that he was insisting that their implementation of ksh in their unix compatibility kit was true to the "real" thing and trying to argue the point with you. The argument ended when someone else finally stood up and informed the speaker who he was arguing with. Just curious ...

    Korn: This story is true. It was at a USENIX Windows NT conference and Microsoft was presenting their future directions for NT. One of their speakers said that they would release a UNIX integration package for NT that would contain the Korn Shell. I knew that Microsoft had licensed a number of tools from MKS so I came to the microphone to tell the speaker that this was not the "real" Korn Shell and that MKS was not even compatible with ksh88. I had no intention of embarrassing him and thought that he would explain the compromises that Microsoft had to make in choosing MKS Korn Shell. Instead, he insisted that I was wrong and that Microsoft had indeed chosen a "real" Korn Shell. After a couple of exchanges, I shut up and let him dig himself in deeper. Finally someone in the audience stood up and told him what almost everyone in the audience knew, that I had written the 'real' Korn Shell. I think that this is symbolic about the way the company works.

    We can see where that effort went. Embrace, Extend, Extinguish.

    Albatross is a fine name for a blog run by anyone at M$. Everyone who works there has made a deal with the devil and the entire company history hung around their necks. If Wilson wants credit for, "enough intelligence to make my own lies up," he can have it. If he wonders why the world might be hostile, instead of the hotbed of helpful, fuckable pawns his company likes, we can always remind him of what his group did to Netscape.

  121. Nothing new by John+Guilt · · Score: 1

    In 1997, when I was on the ECMAScript standards committee, meetings mostly consisted of Netscape and MS reps shouting at each other while the rest of us twiddled our thumbs.

    My only contribution was a scathing indictment of the idea (I think from MS, but I'm biased) of putting a hard memory limit INTO THE LANGUAGE. Guhh.

  122. Gmail? by bizitch · · Score: 1

    Is this why my Gmail has been sucking as of late?

    I've been using it for over 2 years on Firefox and it's been awesome

    All of a sudden its slow as hell to just open the inbox page - it just began to suck big time - real laggggy for everything

    I just got upgraded to Firefox 2.0.0.9 and it seems better now ....

    --
    ---- "Logoff! That cookie shit makes me nervous!" - A. Soprano
  123. And all I wanted getters and setters by srijon · · Score: 1

    Once we can get this one basic feature of JS 2.0 working on all modern browsers, then we're ready to talk about things like ES4.

  124. Re:NO -- Microsoft does not have a point by secPM_MS · · Score: 1
    It seems to me that Microsoft is caught in a legacy trap. If they move to full compliance, they break web sites that are coded to their old implementation. Thus, they are moving gradually. Given time, they will move, but it will take a number of major release cycles.

    As for other browsers, I use Opera and Firefox as well as IE. I use Opera as a static HTTP renderer if I am doing something relatively dangerous -- all media off, including images, all scripting off, cookies and cache cleared on exit, etc. I use Firefox with NoScript to handle things like ordering supplies from sites with which I do not want to associate full trust. If I fully trust a site, I use IE trusted zone. No other browser that I am aware of supports the zones model, let alone a finer-grained trust model. Thus, I use the combination of IE with Zones, Firefox with partial trust, and Opera with no trust to control my risk exposure appropriately.

  125. Then you don't understand Javascript. by SanityInAnarchy · · Score: 1, Informative

    Go read some Douglas Crockford.

    Javascript is about as powerful as Lisp or Ruby, and certainly no less powerful than Python.

    If it's the syntax that's bugging you, write a preprocessor and shut up.

    --
    Don't thank God, thank a doctor!
    1. Re:Then you don't understand Javascript. by Allador · · Score: 1

      Powerful does not mean good or useful.

      ASM is powerful, heck, even XSLT is powerful by some definitions. That doesnt make them very useful.

      It has a lot of warts, much of which these guys are (for better or worse) trying to clean up. You can basically read the feature-list for ES4 for everthing that is wrong with JavaScript/EcmaScript now.

      JavaScript right now is basically perl-for-the-web. It only really appeals to people who enjoy finding the most arcane, esoteric ways to do common-day stuff, such that its hard for others to read & reuse.

      I think the bottom line metric for what's wrong with JavaScript is how you pretty much have to get 'tricky' with the language to do anything useful. The fact that the language can be extended at runtime to do everything it does is interesting, and shows off how loose (ie, powerful) it is. But you shouldn't have to get tricky in a language to do common things. Thats always a bad sign.

    2. Re:Then you don't understand Javascript. by SanityInAnarchy · · Score: 1

      But you shouldn't have to get tricky in a language to do common things.

      Why not?

      One of the biggest strengths of Ruby, for instance, is that most of the language is, itself, written in Ruby. Thus, while it does make it easy to do common things, the way in which it makes it easy is at least as tricky as Javascript.

      So, one of the biggest strengths of Javascript is that you can do a common thing in an easy way, or a hard way, or a tricky way. And that, once you are doing things the tricky way, it actually isn't that bad to use -- in other words, you can sort of invent the equivalent of Ruby's standard library.

      But put this in context -- people are talking about it as if they really don't understand it. For instance: "I don't like Python, but even that would be an improvement over Javascript." I would be comfortable making that statement about Visual Basic, but not Javascript -- maybe Python would be an improvement, but they are dismissing the language without even looking at it.

      There are things wrong with every language. If we're willing to have a serious discussion about what's wrong with Javascript, and why we think other languages might be better (or what we should change for ES4), I'm all for that. But I do kind of feel that Douglas Crockford should be required reading before anyone dismisses the language so casually.

      --
      Don't thank God, thank a doctor!
  126. How is that insightful? by SanityInAnarchy · · Score: 1

    First prove that the whitespace is a bad idea. You're going to indent like that anyway, isn't it simpler just to...

    No, nevermind.

    First, prove that this flamewar about whitespace has anything at all to do with the requirements that it be a script, that it be client-side, or that it be in a web browser. For that reason alone, this should be -1 Offtopic.

    I can think of a few valid reasons why Python wouldn't work well for this, at least without some serious hacking. Whitespace isn't one of them.

    (And if it was, like I keep telling people -- write a preprocessor, if syntax is all that keeps you from liking a language.)

    --
    Don't thank God, thank a doctor!
  127. You mean the DOM/API. by SanityInAnarchy · · Score: 1

    Both can be wrapped in libraries. And this has been done.

    Trust me on this -- I do HDi (HD-DVD) development. There are fairly big differences between Javascript on HDi and Javascript in a Web browser -- but there are actually a lot of library functions we can port over from the Web, and very little we have to do from one HDi implementation to another. You mentioned Microsoft's Javascript implementation -- actually, that's JScript, so called because they are legally not allowed to call it JavaScript -- but JScript powers some HDi implementations, and completely different scripting engines power others.

    I'd say, yes, screw two languages -- but not for the reasons you said. Screw two languages because porting between entirely different languages -- for instance, Perl to Ruby -- can be MUCH more work than porting between Javascript and ECMAScript, or between ECMAScript and HDi, or...

    --
    Don't thank God, thank a doctor!
  128. I should point out... by SanityInAnarchy · · Score: 1

    The downside of Silverlight is the possibility of patent issues. If that ever goes away, and particularly, if Silverlight ever gets vetted by a standard body, it looks good.

    Here's why:

    You want the old Javascript? Fine.
    You want the new, Mozilla-sponsored, v4 or whatever of ECMAScript? Fine.
    You want Python, Ruby, or Java? Go right ahead.

    A bytecode engine in the browser is both long overdue, and this is why. This way, no one gets to bitch about the language in the browser (though I like Javascript just fine for most purposes), as you can run just about any language there.

    (Ok, Java did a bytecode engine in the browser, but Java applets sucked. I think Silverlight has the potential to suck a lot less than Java did.)

    --
    Don't thank God, thank a doctor!
  129. It's the GUI, flipping rotten GUI, not language by Tablizer · · Score: 1

    What is really needed is a new open rich GUI standard that is not necessarily tied to JavaScript or ANY language. Why tie a GUI engine to a particular language? Both proprietary and open-source keep doing this more or less. JavaScript is not the real issue. (But since it is a common web standard, it shouldn't be ignored.)

    What's really needed is an open standard that allows rich desktop-like GUI's to be created for a web browser or web-browser-like tool. I'm tired of the limitations and goofiness of DHTML + DOM. They may be fine for e-brochures, but suck for business-oriented GUIs and are too tied to the get/post HTML model to clean up. It's like being stuck with 1984 interfaces. Desktop GUI's roughly reached a pinnacle in 1994, but the web never got there.

  130. Re:To me, this seems vaguely pointless for browser by SanityInAnarchy · · Score: 1

    ...compiler where you could add whatever local features you need and have the compiler throw away the fluff and stick in cross-browser compatible shims.

    Even without eval, Javascript alone is sufficient to do this in, provided you start with something that's sufficiently like Javascript.

    Maybe you can't change syntax, but with ECMAScript 3 today, you absolutely can muck about with just about anything that's browser-specific, be it in the API itself or in your own (already written) functions or classes -- that's what's cool about a dynamic, prototype-based language -- until you basically have a cross-platform library with all the platform-specific crud in there, and your actual Javascript, while it's executed "natively", is also fairly lightweight, platform-agnostic stuff.

    --
    Don't thank God, thank a doctor!
  131. Re:To me, this seems vaguely pointless for browser by SanityInAnarchy · · Score: 1

    By the time that a good chunk of all browsers actually support ECMA 4, it's going to be a "nice to have" feature that nobody's going to be too keen on.

    Why?

    --
    Don't thank God, thank a doctor!
  132. you're a moron by gasaraki · · Score: 1

    the point is that HTML already uses indenting to some degree, and has rules that make sequential whitespace unimportant in most cases combined with stylistic constraints like not line breaking inside attributes. embedding a langauge where whitespace is significant inside a markup where whitespace is insignificant is retarded. what happens when you want to invoke python inline in an onclick for example, and need to start a new line? you cant use the HTML's level of indenting because python needs its own, so what do you do? break back to column 1? in a multi-line quoted string? what about when a script tag starts at a certain level of indentation?

    basically you're a moron.

    1. Re:you're a moron by SanityInAnarchy · · Score: 1

      the point is that HTML already uses indenting to some degree

      No, it doesn't.

      Some HTML authors, maybe. HTML itself, no.

      and has rules that make sequential whitespace unimportant in most cases combined with stylistic constraints like not line breaking inside attributes.

      So?

      embedding a langauge where whitespace is significant inside a markup where whitespace is insignificant is retarded.

      Which is why I didn't suggest that, moron.

      I suggested embedding it in the web browser. No one in their right mind writes a serious web app entirely inside <script> tags. You write it in an external .js file, and use the src attribute to refer to it.

      what happens when you want to invoke python inline in an onclick for example, and need to start a new line?

      You don't. You put the script somewhere else, and invoke it from an onclick. Allowing inline script there was about as stupid a move as allowing the <FONT> tag to exist.

      you cant use the HTML's level of indenting because python needs its own, so what do you do?

      Been awhile since I worked with Python, but if I understand it, Python only requires the indentation to be constant within a scope. Thus -- again, guessing here -- but I would imagine that simply breaking in the first place, then adding as much indentation as you want, would work fine. That goes for the script tag, too, assuming you're that stupid.

      what about when a script tag starts at a certain level of indentation?

      Then you add a src="myscript.py" attribute to your script tag, and add a closing script tag.

      basically you're a moron.

      Well, I am kind of abstractly maybe suggesting replacing Javascript with Python, so maybe.

      But you're the one choosing a language based on purely syntactical reasons, especially when they're so trivially solved. There are so much better reasons not to jump to Python yet. Like the GIL...

      --
      Don't thank God, thank a doctor!
  133. Neither way will break things. by SanityInAnarchy · · Score: 1

    As I understand it, the basic way this will work is, if there's no version number requested by the script, some heuristic will be used, in such a way that pretty much any script will end up being run the old way.

    The new way would be to specify a version. For example:

    <script version="4.0">

    This both solves your problem, and makes the Microsoft argument irrelevant. Ok, yes, IE will have to throw resources at it -- boo frickin' hoo, you're Microsoft. Don't you have Developers? Developers? Developers? Developers?

    But for the existing Web, everything will continue to work on new browsers. All we'll see is that some new websites will only work on the new browsers, and not on the existing ones. Which is fine, really, as most people are getting auto-updated to the latest browser as a matter of course.

    --
    Don't thank God, thank a doctor!
  134. Whoops, looks like I was dead wrong. by SanityInAnarchy · · Score: 1

    Wow. Sorry about that. Mod me down, hard, please.

    Looks like the way it works is, a few things that were obviously broken in Javascript are finally getting fixed. This will break code that relies on the old (broken) behavior, but it should be possible to write code that works on both. (If this is what I think it is, it can be solved with a search and replace.)

    And it looks like Microsoft is arguing for what I suggested, while Mozilla (and others) are arguing that any <script> tag should run the new version.

    As for "just don't break anything", I think it's worth it, really. Frankly, again, assuming the features are what I think they are (and I don't seem to be batting 100% right now), it's kind of like all that code for x86 which assumed that certain things were 32 bits, or that you could always use an int as a pointer, etc. Notice, also, how there's tons of code that just compiles and runs fine on x86_64, with zero effort on the part of the developer, and really no thought put into supporting it -- they simply used best practices.

    --
    Don't thank God, thank a doctor!
  135. silverlight and C# are FAST! by SanityInAnarchy · · Score: 1

    And that is why I really, really want the patent issue to go away. It really depends how Microsoft uses those patents.

    If they are actually about making a new open standard, and not locking Linux out once and for all, they may eventually give up control of those patents.

    In the meantime... Silverlight, if I understand it, can actually do hardware-accelerated vector graphics and animations, controlled from "script". And the "script" is a bytecode language, thus you can have closed code if you want it, or open code in any language that can compile to it, not just Javascript. And, hell, Silverlight can probably do threading, too! (Something even ES4 doesn't seem likely to fix.)

    But this just brings to mind... What we really need is PNG.

    See, if you remember, back in the day, there was GIF and JPEG. The problem was, GIF was patent-encumbered, and thus, GNU, in particular, refused to implement it, and others did implement it, at their own risk. There was much furor over it -- campaigns against GIF, threats to sue people writing GIF software without paying a $5k fee (at least) for the patent...

    Two things happened.

    First, the free software community invented PNG, which is like GIF, but better in absolutely every way, except that old versions of IE didn't support it without a plugin, and new versions still don't support it as well as Firefox. Basically, PNGs use a different but better compression algorithm, support all the features GIFs do and more, and are pretty much the only image format you will ever need for lossless images. (If your image is really that big, use Jpeg.)

    Second, the GIF patent (actually a patent on the compression involved) expired, way back in 2003. So, we can now use GIFs if we really want to, even though they've been completely obsoleted by PNGs. There's now no legal or convenience reason not to use GIFs, only the technological reasons -- and on technological merits alone, GIF loses. Hell, I do HD-DVD development, which is kind of Microsoft's baby, right? We use PNG images pretty much exclusively. I think the spec might support JPEG, but I doubt it supports GIF.

    So, if mono is really doomed to patent bullshit, we need to pull that off again -- invent something like PNG, get it supported in Firefox. I'm not sure we can do it this time, though.

    But sorry, (X)HTML5/CSS3/ES4 is not that. In part, it's not that precisely because web standards people don't take your attitude -- each of those components try to be as backwards-compatible as they reasonably can.

    --
    Don't thank God, thank a doctor!
  136. Screw you! by Anonymous Coward · · Score: 0

    As a user, I really couldn't care less which way it goes. As a developer, I really don't care, either (because I'm going to write in another language and transform/compile to Javascript, if at all possible).

    Just make it better overall! You're always going to have slight regressions. Maintaining 100% backwards compatibility is a recipe for pain and complexity tomorrow. Us web developers are used to extensive testing on our end, anyway, so you couldn't ask for a better environment in which to be allowed to break backwards compatibility.

    If we actually followed "don't break things that work now" we'd still be using horses instead of cars. I'm embarrassed to be a computer scientist when we've got the equivalent of horses 'n' buggies and people are afraid to change it because slashdot might not look quite right for a little while. Boo hoo. Better to fix it now than later.

  137. Re:NO -- Microsoft does not have a point by BenoitRen · · Score: 1

    It seems to me that Microsoft is caught in a legacy trap. If they move to full compliance, they break web sites that are coded to their old implementation.

    That's only one aspect, which is IE's lenient parsing. That doesn't stop M$ from implementing HTML and CSS fully.

    And it doesn't address my argument of advocating closed standards. We all know M$ wants to control the web, and we all know how they let their browser rot for almost 5 years because the competition was crushed.

    (insert trust arguments here)

    The model you're advocating is broken. No website can be trusted, and IE's model was broken from the start. Web browsers should be relatively secure from the start. They should never expose themselves. Only visiting trusted sites doesn't cut it; trusted sites get hacked with malicious code. The answer is secure browsers.

  138. MS gets to cast Netscape's vote... by Archtech · · Score: 1

    Who should be the ultimate arbiter of JavaScript's future? Obviously Netscape, the company that invented it.

    Since Netscape is no longer with us, MS should obviously inherit its rights. It's traditional and customary: you kill someone, you get to keep their possessions and cast their votes.

    --
    I am sure that there are many other solipsists out there.
  139. Grr...not more browser bloat by zullnero · · Score: 1

    Because by trying to be backwards compatible, and they'll have to be backwards compatible no matter who wins the pissing match, it's just inevitably going to lead to more browser bloat.

  140. Um... hello... ES4 is backward compatible by Anonymous Coward · · Score: 0

    This is just silly. ES4 is backwards compatible with ES3. That has been the number 1 priority of its design, and if you had bothered to actually *read* something about it, you'd know it. But no, that would require some effort and it's better to just post some random, unfounded rant. So I'll summarize it for you: VMs and interpreters that can run ES4 scripts will have no problem handling all that legacy JS that you claim will be thrown to the gutter.

    So, you either spread misinformation because you are ignorant, or because you are an astroturfer on Microsoft's payroll. I don't really care; just stop the FUD. Microsoft's agenda in this is more than clear. They have just released Silverlight, the CLR and, surprise!, an ES3 implementation for it. I don't think I need to comment this further.

  141. Re:Flash-bashing equivalent by Anonymous Coward · · Score: 0

    Did you know that when you start using Opera for serious browsing it can take in excess of 40 seconds for it to shut down when you can no longer endure how fucking SLOW it is?

    Not to mention that *disabling* javascript is the wrong way to go about it in my mind (and apparantly the minds of many). One should *enable* it when it's necessary. :)

    Add to that that it's closed source so you have no idea if they're selling your information to satan, it's progress bars are a joke designed to make you think Opera is faster, and it's UI is uglier than windows 95 hit by a truck, and you'll start to realise just why it's market share is so low..

    Yeah. I tried using Opera. I was back to firefox in about 4 days.

  142. I don't care by billcopc · · Score: 1

    I really don't care about the implementation details, as long as they maintain excellent compatibility with legacy Javascript. Whether I have to write , who gives a damn!?!

    --
    -Billco, Fnarg.com
  143. Scottrade.com by ir · · Score: 0

    I have to use Konquerer or IE to access Scottrade (members area).

    Also Firefox is slow, bloated, and crashes frequently on Windows and Linux.

    --
    Irina Romanov
  144. Re:Flash-bashing equivalent by sgbett · · Score: 0

    my favourite is the web browser that doesn't automatically submit a form when enter is pressed even though there is a button element within in that has type="submit"

    --
    Invaders must die
  145. ecmascript4 == Java by theolein · · Score: 1

    If you actually take a look at the spec, or if you have spent any amount of time programming actionscript in Flash CS3, you will no doubt have noticed that, with some exceptions, such as JS's dynamic properties, ES4 is basically Java, but where the types are defined as such: var x:int, y:string instead of int x and String y.

  146. Re:To me, this seems vaguely pointless for browser by Metaphorically · · Score: 1

    The "extra features" part I mentioned was actually me thinking about how great it would be to get that one extra feature in Javascript plus the ability to enforce a certain inheritance model (just for consistency within one project). This all got in to my head after listening to Bruce Johnson talking about GWT on Technometria (and fwiw I thought he said "static typing").

    --
    more of the same on Twitter.
  147. But what's the fight actually about? by sreekotay · · Score: 1

    Its not a technical battle, exactly - ES4 takes a lot of what's good about JS, from an advanced lanaguage perspective, but loses a lot of some of what makes it good as a lightweight language (IMHO). Which is fine - its increasingly not used as simple glue...

    I say not a "technical battle" though, in that Yahoo and MS (or at least their reps on the working group) just seem to believe its not Javascript anymore: The analogy here would be if the there was an attempt in Java's early life to call it "C++ Edition 2". I kind of agree on the merits of that argument, but (though I might change some of the, well, changes in ES4) think that the "open web standards" coalition really needs to go this way *directionally* to compete... more thoughts on this in my JS flame war blog post from a few days ago.

    1. Re:But what's the fight actually about? by aevans · · Score: 1

      Yes, it would be just like that if Bjarne Stroustrup had invented Java.

    2. Re:But what's the fight actually about? by sreekotay · · Score: 1

      Makes sense. Brendan invented the language, so his changes must be in the right? ...Sounds suspiciously like one of the "elephant in the room" undertones on the Mozilla mailing list...
      ---------
      graphically speaking

  148. Re:NO -- Microsoft does not have a point by secPM_MS · · Score: 1
    Some sites can be trusted more than others. Indeed, some have to be trusted, as you may choose to download executables from them. To the extent that I am willing to download and then run an executable from a site, I have to trust it.

    Given Google, the rise of Firefox and to a lesser extent Opera, and the growth of new middleware vendors, the paranoid cry "MS wants to control the web" seems rather farfetched to me. THe web is far too large and has too many actors for MS to try and control it.

    Treating all web sites equivalently is inappropriate security policy. The question is how do you implement a differentiated fine grained security policy to match your risk and benefit issues. Zones are useful, but too coarse. I have approximated it by using Zones with IE, Firefox with fine-grained NoScript policy, and Opera as a static text renderer.

  149. Wow! Combo of D and Python by oblivion95 · · Score: 1

    Very nice language!

    * Iterator protocol (including StopIteration exception)
    * Generators (via yield statement)!
    * List comprehensions!!
    * String slicing
    * Native datatypes (Vector, Map, ...)
    * Generic function templates
    * Classes!!!
    * Control over initialization
    * Type-reflection
    * Clear module and namepsace systems.
    * Interfaces
    * ... much, much more!

    What's missing:

    * contract programming (pre/post-conditions and invariants)
    * built-in unit-testing
    * literate (in-code) documentation
    * keyword arguments (but they've added var-args at least)

    On thing I don't like:
    * dropping "return" at the end of short functions. That does not improve clarity at all.

    I'm not sure it's so smart to put all this in a browser language, but it's really a great language definition.

  150. Re:MOD PARENT TROLL by Anonymous Coward · · Score: 0

    POF works fine for me in Firefox, but I also use Noscript, adblock, and so on. Only once in a great while will the site not work, and this is only regarding the picture previews when viewing a profile, not allowing one to see the small thumbnails get enlarged.

    POF also works great for meeting women! (So does OKCupid).

  151. Firefox js is slow by roguegramma · · Score: 1

    Firefox js is slow, maybe by design.

    My javascript game HylZee runs very slow on firefox.
    I'm not so sure that I'd trust these guys to specify a new version of js.

    --
    Hey don't blame me, IANAB
  152. Re:MOD PARENT TROLL by Anonymous Coward · · Score: 0

    There's a dating/forums site called plentyoffish that regularly freezes Firefox for me

    According to Wikipedia, the guy who runs the site wrote it in ASP.NET, so it's hardly surprising. /ducks