Kör C och C++ kod direkt i Flashspelaren
Scott Petersen visar Zelda i Flash.
När kampen mellan Flash och Silverlight hårdnar, och det kommer den göra, så är ett av Microsofts truimfkort att flera programmeringsspråk kan användas för att skapa Silverlightapplikationer. Flash har alltid varit begränsat till Actionscript, och även om det visserligen är baserat på en standard så kommer man inte ifrån att man måste lära sig ett nytt programmeringsspråk. Det ser nu ut att kunna ändra på sig.
I den här videon visar Scott Petersen från Adobe upp ett utvecklingsproject kallat FlaCC, "Flash C Compiler", vars syfte är att möjliggöra användning av C-kod i Flashspelaren. Presentationen beskrivs på följande sätt:
"FlaCC is a research project that compiles C code to ActionScript using llvm-gcc with a custom flash code generator. This enables almost arbitrary C and C++ code to be executed safely and efficiently within a Flash container on web pages. This talk describes the implementation of the system and shows several compelling examples that use it to run other language and CPU interpreters within Flash as well as run existing large programs within C. The demos are also extremely impressive."
Med FlaCC kan man alltså kompilera C och C++ kod som sedan kan köras direkt i Flashspelaren. C-koden kompileras till Actionscript 3 som i sin tur kompileras till ABC (Actionscript Byte Code) som Flashspelaren kan hantera. På vägen görs några trick, bland annat för att lösa problemet med att C-kod är synkron och Actionscript kod är asynkron, men tydligen ska det mesta fungera.
I presentationen visar Adobe spelet Quake som körs i Flashspelaren. Spelet är kompilerat med FlaCC från källkoden skriven i C/C++. Det går hyffsat snabbt, runt 30fps, i upplösningen 800x600. I presentationen visas även en NES emulator, även den skriven i C/C++, som kör Zelda i Flashspelaren. Alltihop är väldigt imponerande.
Det finns med andra ord en hel del potential i FlaCC. Det finns naturligtvis en uppsjö av kodbibliotek, varav många är öppen källkod, att dra nytta av. Men riktigt intressant blir det när man börjar inse att många interpreterade språk är skrivna i C. Python, PHP och andra populära skriptspråk skulle alltså kunna användas för att skriva Flashapplikationer. Även detta är något som demonstreras i presentationen.
Så förutom att attrahera C-programmerare så skulle man på köpet få med många andra utvecklare. Och dessutom misstänker jag att Flashspelaren skulle få lite mer respekt på köpet.
Länkar: Video med hela presentationen samt PDF med hela presentationen.
Postat 10/6/2008, Kommentarer (475)Taggar: flash player actionscript FlaCC Quake Zelda
Kommentarer:
Kommentera inlägget