Intro
Sidste uge sluttede på en højst uventet måde. ECMA og nærmere TC39, den tekniske komité der der har haft til opgave i snart 10 år, at udarbejde standarden for næste generation af JavaScript, bedre kendt som ECMA 4 Script, valgte at forkaste udkastet.
ActionScript har stærk forbindelse til ECMA standarten, da ActionScript 1.0 bygger på ECMA 262, og efter Adobes sammensmeltning med Macromedia, har det hele tiden ligget i kortene at ActionScript 3.0 skulle være det "draft" som ECMA 4 standarden skulle færdiggøres ud fra.
En pludselig ud-melding
Fra ECMA kommer ud-meldingen om forkastelsen af ECMA 4 blandt andet efter at Microsoft har udmeldt at de aldrig vil implementere ECMA 4 i deres Internet Explorer (læs Exploder). Det er klart at bliver næste version af JavaScript ikke implementeret i IE, som (desværre) stadig udgør 80 % af anvendte browsere world wide, giver det ikke mening at tale om en ny version af JavaScript.
En af udmeldingerne fra Microsoft har været at det er for omfattende at implementere ECMA 4, men mange kilder tættere på forløbet mener at det udelukkende handler om at Microsoft ser ActionScript og JavaScript som en konkurrent, og derfor benytter de deres magt til at bremse udviklingen, til fordel for egen vinding (f.eks. bedre fundament for Silverlight). - en interessant sammenligning her, er Microsoft's egen kamp for at få deres OOXML standard presset igennem som standard, (med alle midler mulige, lige fra forsøg på køb af stemmer der i mit univers burde kaldes bestikkelse). - morsomst er det dog at denne "standard" de selv ønsker fremelsket, er for svær at implementere for dem selv, og derfor er deres eget Office 07 ikke bygget på standarden.
Intermezzo
Så altså ingen ECMA 4 standard, og JavaScript 2.0 og standardiseret AS3 i denne omgang. - der er kræfter der frygter for den udvikling web standarterne ville have fået med ECMA 4. - et meget ærgerligt skridt for web udviklingen. Når jeg skriver web, så er det fordi det som sagt langt fra kun involvere AS sproget. Siden 1999 har JavaScript stort set ud som det gør i dag. Kun få og mindre dot releases har raffineret sproget gennem de 10 år der er gået. JavaScript 2.0 ville have taget HTML og det klassiske web med ind i næste fase, med et sprog der er modnet, og har vokset sig større og stærkere med de nye og solide OO egenskaber og finesser vi kender dem fra AS3. Adobe var tidligt ude og overdragede code basen til Flash Playeren til Mozila foundation og startede samarbejdet om deres bud på den virtuelle maskine der skulle eksekvere ECMA 4.0 sproget (JavaScript 2.0) under kodenavnet Tamarin.
I stedet har man valgt at gå efter en langt mere beskeden ny standard ECMA 3.1 som går under kodenavnet "harmony". For mig at se, er det mere vist som et sørgeligt spil fra galleriet, for at det ikke skal se ud som om der lige frem er modarbejde om en ny og forbedre standard. - det lugter dog en del af at det ikke er standardens indhold, der bremser udvikling, mere at det er kommercielle interessekonflikter der har stoppet ECMA 4.0.
Det skal retfærdigvis siges at ECMA TC39 har været splittet i over et år, med en part bestående af blandt andet Adobe, Mozilla, Opera og Google på den ene side, ivrige for at tage ECMA Script 4.0 til det næste stadig og blandt andre Microsoft og Yahoo på den anden side med beklagelser over at ECMA 4.0 var for drastisk, og at det var bedre med 3.1, altså et lille skridt, med nogle få bugfixes og mindre ændringer.
Så hvad nu
ActionScript 3.0 gik altså fra i sidste uge at være udkastet og basis for en kommende standard til at være et proprietær sprog, i sin egen blodgade. Adobe har implemneteret et hav af features i AS3 som stammer fra ES 4.0 standarden - en standard der nu ikke længere er. 3.1 har allerede en række ting som er i modstrid med AS3 hvilket gør det svært for ECMA standarden og AS at mødes lige foreløbigt.
ECMA Script 3.1 vil fortsætte med at blive defineret, og det lyder til at flere gode ting fra ECMA Script 4.0 nu også vil blive tilføjet til ES 3.1. Adobe har også udmeldt at de stadig vil bidrage med samme interesse og engagement i ECMA TC39 i samarbejdet om den nye standard.
Afslutning
ActionScript 3.0 ER jo født, og eftersom det nu viser sig at være lidt af en bastard, uden "rent standard" blod i årene, giver det selvfølgelig stof til eftertanke. ActionScript er jo et stærkt klient sprog, der, efter min mening, sagtens kan klare sig uden en standard som ECMA i ryggen (se på f.eks. Ruby, Python - ja selv Java, var også deres "egen" uden standard i ryggen indtil for få år siden). Der spekuleres nu i om AS skal gå i retning af haXe som er et ideen om et universielt web sporg. I hvert fald siger Adobe at de stadig vil presse ActionScript til at stå mål med hvad vi forventer af et nymodens sprog, og måske er det kun en fordel at vi ikke skal holdes nede af ECMA standarden. Jeg forestiller mig at der i fremtiden ville kunne laves dot releases med lagt mindre intervaller, som er mere sammenhørige med Flash/Flex communitiet og deres behov (giv os de private constructors tilbage
). - men det er ren spekulation fra min side.
ActionScript's store styrke ligger langt fra i at have en standard i rygge, ActionScript's styrke ligger i du og jeg. For et kæmpe community der anvender, nyskaber og presser sproget til grænserne er langt mere værd end hvad en standard kan bidrage med.
Keep On Coding!
Disclaimer
I det ovenstående er der personlige holdninger, meninger og spekulationer der helt og holdet står for min egen regning. Jeg opfordre til at alle der måtte ønske at vide mere om emnet, selv søger dybere ind i emnet. Et godt sted at starte er kilderne herunder
Kilder:
http://whydoeseverythingsuck.com/2008/08/ru-roh-adobe-screwed-by-ecmascr...
http://blogs.adobe.com/open/2008/08/blog_entry_dated_81408_715_pm.html
https://buzzword.acrobat.com/#d=*NvtMq4kSE2-jR2AqeHgyA
http://joshblog.net/2008/08/13/how-will-ecmascript-harmony-affect-action...
https://mail.mozilla.org/pipermail/es-discuss/2008-August/003400.html
5 kommentarer
Det er godt nok en hård melding, jeg ikke lige havde set komme
Men tjo, kan også være at det fører noget godt med sig for as. En ting er sikkert, det stopper ikke noget, men sætter blot MS i et endnu dårligere lys end tidligere.
Skal blive spændende at følge med i hvad der kommer til at ske
SUK! Det er en sorgens dag - ikke så meget for AS for det skal nok overleve, men for udviklingen af internettet generelt.
- jeg synes især det er ærgerligt for JavaScript udviklerne. Ingen tvivl om at nogle har ønsket ES 4.0 ville forsvinde, ligesom folk i Flash miljøet der stadig hacker AS1 kode, ikke var for vilde med tanken om AS 3.0. Forestil jer en seamless overgang mellem AS 3.0 og JS 2.0 - hvor hardcore AJAX kodere ville kunne hoppe ind og lave AS og omvendt; vi ville kunne lave en lækker AJAX løsning til at akkompagnere en Flash løsning, uden at føle der var den store forskel på miljøet og sproget vi befinder os i.
Heldigvis synes jeg at folk i branchen, efter blot nogle få dage, er begyndt at se rigtigt lyst på hændelsen. - og de muligheder det egentligt giver for AS til at komme videre.
Flot artikel - tak for den
Det skulle ikke være første gang i historien, at dårligere teknologier kommer frem istedet for bedre alternativer pga diverse store virksomheder. Men sådan er det jo at leve i en kapitalistisk verden.
J
Spændende, spændende..
Det kan jo betragtes som både positivt og negativt.
Flash har tidligere været en krøbling i forbindelse med at kommunikere med andre
sprog/standarder(stort set kun HTTP), men har alligevel vokset sig stor og stærk på baggrund af et community.
Så mon ikke det nok skal klare at skulle gå alene videre.
Flash har jo udviklet sig i på måde hvor, efter min mening, det har gået nogenlunde i samme retning som C++, Java, JavaScript osv. men beholdt sine særheder og styrker (den nemt opnåelige og grafisk imponerende brugerflade man kan bygge, timelinen og fleksibilitet over for nybegyndere). Nu har det taget store skridt mod at simplificere kommunikationen med andre sprog med Flex og de mange nye API's der ligger i AS3 og AIR. Så jeg er positiv. Hvis Adobe kan drive en god portion af innovationen på det grafiske område, hvorfor skulle de så ikke kunne løfte opgaven på et programmeringsmæssigt område.
På den anden side er vi lige (inden for de sidste 4-6 år) kommet ud over at
den almene bruger betragtede flash som værende udelukkende et "krydderi", eller et irritationsmoment der krævede downloads af speciell plugins osv. Hvis større "spillere" begynder at modarbejde den udvikling og langsomt trække understøttelsen af forskellige API's væk, så får Flash det svært. Kan allerede se IE bimle og bamle med advarelser omkring "Potentielt farligt 3D plugin fundet'"!
Mvh. Ricki
AS1 < AS2 < AS3