Achteraf gezien is het misschien niet de beste beslissing geweest van Netscape om ooit, lang geleden, juist JavaScript in de browser toe te laten en waren we beter af geweest als ze een moderne taal als Java of C# hadden gekozen.
Maar de praktijk is helaas dat het te laat is om nog terug te gaan, en elke keuze voor een betere nieuwe native webtaal wordt een mega politiek gevecht. Java in de browser leek ooit de toekomst (JS voor simpele scripting, Java voor apps), maar Sun heeft het verknoeid en Microsoft, Google, Apple en Mozilla hebben uiteindelijk Java (als client-side platform) met zijn vieren de nek om gedraaid. C# in de browser: objectief misschien wel het beste, maar anno 2011 gunt niemand MS zo'n overwinning. Google's nieuwe Dart taal? Wie weet, maar Google moet flink gaan lobbyen bij Mozilla, MS en Apple om dat erdoor te krijgen. En ActionScript? Tsja...Adobe heeft waarschijnlijk nog minder fans dan Microsoft op dit moment.
Nee, de 'least worst' lijkt te zijn: fix zoveel mogelijk tekortkomingen van JS, en leer ermee leven. Het is misschien niet ideaal, maar het is het enige dat echt crossplatform werkt.
[Reactie gewijzigd door Dreamvoid op zondag 18 september 2011 17:52]
Java kwam in de tijd van Netscape nog maar net om de hoek zetten, en van C# was ook nog niet echt sprake. Zeker niet in de vorm zoals het nu is, er zijn zeer veel ontwikkelingen geweest in de informatica de laatste 10 jaar die ervoor gezorgd hebben dat C# nu is wat het is.
Java is niet zozeer de nek omgedraaid omdat het Java is of omdat het van Sun is. Maar het is gewoon een te logge taal om mee te programmeren en het hele concept van een applet dat eigenlijk in de browser draait is te outdated en daar kan je niet snel iets mee. Dat het bij flash wel heeft gewerkt is omdat daar een sterkere marketing achter zit/zat en omdat daar veel flashy dingen mee gemaakt werden.
C# in de browser heb je eigenlijk al, namelijk Silverlight. Daarmee heb je niet het gehele .NET framework en zijn mogelijkheden tot je beschikking maar je wel het grootste gedeelte.
Ik ben het wel met je eens dat het patchen van JS een goed idee is. De syntax is eigenlijk prima en dat het prototype-based is is verder ook niet zo erg. Verder zijn er al nieuwe features zoals list-comprehensions toegevoegd, dus het wordt allemaal wel bruikbaarder. Het wachten is alleen op dat alle browsers een uniforme JS API gaan ondersteunen. Zolang ze dit niet doen zullen we de problemen blijven houden zoals we die nu al hebben.
Achteraf gezien is het misschien niet de beste beslissing geweest van Netscape om ooit, lang geleden, juist JavaScript in de browser toe te laten en waren we beter af geweest als ze een moderne taal als Java of C# hadden gekozen.
Achteraf kijken is altijd het makkelijkst...
Java
was in de browser beschikbaar. JS en Java zijn ongeveer tegelijk ontstaan, (maar niet samen ontwikkeld -- het "Java" in "JavaScript" was juist marketing om op het hippe nieuwe Java mee te liften). Dat je C# noemt (dat nog niet *bestond* toen Java en JS opkwamen) getuigt evenmin van veel historisch besef. Netscape was al praktisch dood toen C# het licht zag, zoveel tijd zat ertussen.
Als Netscape de beschikking had gehad over een tijdmachine bestonden ze nu nog, dat is een feit. Het is hoe dan ook te makkelijk om te zeggen "hadden ze 15 jaar geleden maar alvast een platform geoptimaliseerd voor multiprocessed multiplatform tablet-apps erin gebakken". De geschiedenis is een raar ding en dat we nu met JS opgezadeld zitten ook, dat is het enige dat zeker is.