Binær kode oversat fra C++ på vej til browseren med WebAssembly

Webapplikationer med kode, der minder mere om Assembler end om Javascript, ser ud til at blive klar til browserne allerede i år.

Javascript bliver presset til det yderste i mange moderne webapplikationer, og de forskellige browsere har i en årrække konkurreret om at have den kraftigste Javascript-motor. Men nu kan Javascript blive afløst af mere maskinnær kode, når den første understøttelse for WebAssembly dukker op i browserne.

Det kan ske allerede i år, skriver Infoworld. De fire største browsere Chrome, Firefox, Edge og Safari har allerede fået understøttelse på testniveau for WebAssembly.

WebAssembly er en anden tilgang til at afvikle mere krævende applikationer i browseren end eksempelvis oversættelse af Javascript til et binært eksekverbart format. Med WebAssembly vil en applikation kunne kodes i C eller C++ og oversættes til et Assembler-lignende format, der i tekstformat kan redigeres direkte.

Med tiden er det også tanken, at WebAssembly vil kunne udvides til at understøtte sprog som C# eller Java.

Man skriver altså først en applikation i et af de gængse højniveausprog, som så oversættes til WebAssemblys format. Det vil kunne give fordele til den type applikationer, hvor Javascript ikke er oplagt, som eksempelvis videoredigering, hvor mange parallelle tråde kan være en fordel.

WebAssembly er beregnet til at være mere generelt anvendeligt end den afart af Javascript, som også kan arbejde med C-kode, asm.js.

Der vil fortsat være tale om applikationer, der distribueres via web til browseren. Men det maskinnære format fylder mindre end tilsvarende Javascript-kode. Applikationerne vil afvikles i en sandkasse med beskyttelse mod klassiske sikkerhedsbrister i forhold til håndtering af hukommelsen.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk

Kommentarer (10)

Ditlev Petersen

"og oversættes til et Assembler-lignende format, der i tekstformat kan redigeres direkte."
Jeg kan godt se fidusen ved at få tingene til at køre hurtigere eller med mindre træk på batteriet, men hvornår har man et stort behov for at rette direkte i "assembler"-koden? Det lyder ikke som et indlysende fremskridt. Det næste skal måske være op-koder i binær eller oktal?

Martin Kirk

Koden eksekveres i et runtime, så dermed er det platforms uafhængig...

lidt i samme grad som IL, som eksekveres direkte når der er tale om native cpu instruktioner (Matematik osv)

Log ind eller opret en konto for at skrive kommentarer

Pressemeddelelser

Big Data Lake Summit: Fast and Trusted Insights

If you want to outpace, outsmart and outperform your competition in a digital world, you need trusted data that can be turned into actionable business insights at speed.
24. apr 15:06

Welcome to Free course to learn about the combined power of Alteryx and Qlik!

Affecto invites to a free course, where we want to share our knowledge of this self-service analysis platform together with the power of Qlik.
20. apr 15:44

Robotics Process Automation (RPA) changes the way organizations think about and perform work at a reduced cost, higher efficiency and greater productivity

Join us for this exiting seminar, which Affecto hosts with our business partner SmartRPA May 3rd, 2017 at 13.00 in Copenhagen.
30. mar 2017