SlideShare a Scribd company logo
Introduction to WebAssembly
Karl Ritchie
December 2017
Contents
i. What is WebAssembly
ii. Goals of WebAssembly
iii.Workflow of WebAssembly
iv.Hello World in WebAssembly
v. Present and future of WebAssembly
vi.Conclusion
What is WebAssembly
 “WebAssembly or wasm is a new portable, size-
and load-time-efficient format suitable for
compilation to the web.”
 http://webassembly.org/
 In other words, WebAssembly makes it possible to compile
your code and run it on the Web(in a browser), similar to
JavaScript.
Goals of WebAssembly
 Goals :
 Portable
 Fast (Compiled and executed at near native speed)
 To make it easy to port your applications to the Web
 Currently C/C++ is main language targeted by WebAssembly
 http://webassembly.org/docs/high-level-goals/
Workflow of WebAssembly
 Simple and straight forward implementation workflow.
Hello World in WebAssembly
 Initial Setup :
 Follow the Getting Started page on WebAssembly’s Website and make sure
your environment is ready.
 http://webassembly.org/getting-started/developers-guide/
Hello World in WebAssembly
 1. Write the C function you want to run in your browser.
Hello World in WebAssembly
 2. Compile your code.
You should now see the .js “glue”
code file generated by the compiler
and the .wasm binary file in your
directory after compiling.
Hello World in WebAssembly
 3. Write some HTML/JavaScript.
Hello World in WebAssembly
 4. Try it !
Demo
Present and future of WebAssembly
 More important features are being planned, such as threading support and
also the enhancement of the developers’ tools.
 Recently (2017), current WebAssembly adoption as a Web standard as
been growing and being supported by major industry players.
 https://blog.mozilla.org/blog/2017/11/13/webassembly-in-browsers/
 Safe to assume that adoption rate should increase in upcoming
months/years and make it a stable and efficient tool for Web programming.
Conclusion
 In conclusion, WebAssembly is :
 Modern binary format intended to run on the Web
 A tool to easily integrate C/C++ into your Web app.
 A growing Web standard.
Questions ?

More Related Content

What's hot

Ionic
IonicIonic
Ionic
BalajiBas1
 
Node.js Frameworks to watch for in 2019
Node.js Frameworks to watch for in 2019Node.js Frameworks to watch for in 2019
Node.js Frameworks to watch for in 2019
BrainMobi
 
Frameworks for Web Development
Frameworks for Web DevelopmentFrameworks for Web Development
Frameworks for Web Development
dtmodern
 
Content Management - The story of headless CMS
Content Management - The story of headless CMSContent Management - The story of headless CMS
Content Management - The story of headless CMS
Strapi
 
The Evolution of Cloud-first Headless CMS [Infographics]
The Evolution of Cloud-first Headless CMS [Infographics]The Evolution of Cloud-first Headless CMS [Infographics]
The Evolution of Cloud-first Headless CMS [Infographics]
Kentico Software
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web apps
Alexandre Marreiros
 
Kentico Virtual Roadshow - June 2017
Kentico Virtual Roadshow - June 2017Kentico Virtual Roadshow - June 2017
Kentico Virtual Roadshow - June 2017
Kentico Software
 
Headless drupal
Headless drupalHeadless drupal
Headless drupal
nmeegamaz
 
Progressive Web App - Jeff Burtoft at microsoft zaventem 03-10-2016
Progressive Web App - Jeff Burtoft at microsoft zaventem 03-10-2016Progressive Web App - Jeff Burtoft at microsoft zaventem 03-10-2016
Progressive Web App - Jeff Burtoft at microsoft zaventem 03-10-2016
Maxime Czetwertynski
 
Strapi Meetup Presentation
Strapi Meetup PresentationStrapi Meetup Presentation
Strapi Meetup Presentation
Strapi
 
Strapi Meetup whitepaper
Strapi Meetup whitepaperStrapi Meetup whitepaper
Strapi Meetup whitepaper
Strapi
 
John pereless Web development
John pereless Web developmentJohn pereless Web development
John pereless Web development
John Pereless
 
Full stack devlopment using django main ppt
Full stack devlopment using django main pptFull stack devlopment using django main ppt
Full stack devlopment using django main ppt
SudhanshuVijay3
 
Web App Development Technologies You Should Know
Web App Development Technologies You Should KnowWeb App Development Technologies You Should Know
Web App Development Technologies You Should Know
Vishal Sinhasan
 
Headless Architecture
Headless ArchitectureHeadless Architecture
Headless Architecture
Amandeep Singh
 
The headless CMS
The headless CMSThe headless CMS
The headless CMS
Érico Andrei
 
Modern Web App Architectures
Modern Web App ArchitecturesModern Web App Architectures
Modern Web App Architectures
Raphael Stary
 
PWA - Progressive Web Apps
PWA - Progressive Web AppsPWA - Progressive Web Apps
PWA - Progressive Web Apps
Edy Segura
 
Get Started with JavaScript Frameworks
Get Started with JavaScript FrameworksGet Started with JavaScript Frameworks
Get Started with JavaScript Frameworks
Christian Gaetano
 
Headless CMS
Headless CMSHeadless CMS
Headless CMS
Erik Van de Water
 

What's hot (20)

Ionic
IonicIonic
Ionic
 
Node.js Frameworks to watch for in 2019
Node.js Frameworks to watch for in 2019Node.js Frameworks to watch for in 2019
Node.js Frameworks to watch for in 2019
 
Frameworks for Web Development
Frameworks for Web DevelopmentFrameworks for Web Development
Frameworks for Web Development
 
Content Management - The story of headless CMS
Content Management - The story of headless CMSContent Management - The story of headless CMS
Content Management - The story of headless CMS
 
The Evolution of Cloud-first Headless CMS [Infographics]
The Evolution of Cloud-first Headless CMS [Infographics]The Evolution of Cloud-first Headless CMS [Infographics]
The Evolution of Cloud-first Headless CMS [Infographics]
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web apps
 
Kentico Virtual Roadshow - June 2017
Kentico Virtual Roadshow - June 2017Kentico Virtual Roadshow - June 2017
Kentico Virtual Roadshow - June 2017
 
Headless drupal
Headless drupalHeadless drupal
Headless drupal
 
Progressive Web App - Jeff Burtoft at microsoft zaventem 03-10-2016
Progressive Web App - Jeff Burtoft at microsoft zaventem 03-10-2016Progressive Web App - Jeff Burtoft at microsoft zaventem 03-10-2016
Progressive Web App - Jeff Burtoft at microsoft zaventem 03-10-2016
 
Strapi Meetup Presentation
Strapi Meetup PresentationStrapi Meetup Presentation
Strapi Meetup Presentation
 
Strapi Meetup whitepaper
Strapi Meetup whitepaperStrapi Meetup whitepaper
Strapi Meetup whitepaper
 
John pereless Web development
John pereless Web developmentJohn pereless Web development
John pereless Web development
 
Full stack devlopment using django main ppt
Full stack devlopment using django main pptFull stack devlopment using django main ppt
Full stack devlopment using django main ppt
 
Web App Development Technologies You Should Know
Web App Development Technologies You Should KnowWeb App Development Technologies You Should Know
Web App Development Technologies You Should Know
 
Headless Architecture
Headless ArchitectureHeadless Architecture
Headless Architecture
 
The headless CMS
The headless CMSThe headless CMS
The headless CMS
 
Modern Web App Architectures
Modern Web App ArchitecturesModern Web App Architectures
Modern Web App Architectures
 
PWA - Progressive Web Apps
PWA - Progressive Web AppsPWA - Progressive Web Apps
PWA - Progressive Web Apps
 
Get Started with JavaScript Frameworks
Get Started with JavaScript FrameworksGet Started with JavaScript Frameworks
Get Started with JavaScript Frameworks
 
Headless CMS
Headless CMSHeadless CMS
Headless CMS
 

Similar to Quick overview of WebAssembly

Modern JavaScript Frameworks: Angular, React & Vue.js
Modern JavaScript Frameworks: Angular, React & Vue.jsModern JavaScript Frameworks: Angular, React & Vue.js
Modern JavaScript Frameworks: Angular, React & Vue.js
Jonas Bandi
 
WebAssembly WASM Introduction Presentation
WebAssembly WASM Introduction PresentationWebAssembly WASM Introduction Presentation
WebAssembly WASM Introduction Presentation
Brad Beiermann
 
Reactjs Basics
Reactjs BasicsReactjs Basics
Reactjs Basics
Hamid Ghorbani
 
Aspnet2.0 Introduction
Aspnet2.0 IntroductionAspnet2.0 Introduction
Aspnet2.0 IntroductionChanHan Hy
 
White Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and PrimeWhite Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and Prime
Hamida Rebai Trabelsi
 
Asp Net Vs Vue JS Which One You Should Choose for Development.pdf
Asp Net Vs Vue JS Which One You Should Choose for Development.pdfAsp Net Vs Vue JS Which One You Should Choose for Development.pdf
Asp Net Vs Vue JS Which One You Should Choose for Development.pdf
Integrated IT Solutions
 
Web Assembly Big Picture
Web Assembly Big PictureWeb Assembly Big Picture
Web Assembly Big Picture
Yousif Shalaby
 
Asp.net Vs Vue.js.pdf
Asp.net Vs Vue.js.pdfAsp.net Vs Vue.js.pdf
Asp.net Vs Vue.js.pdf
Integrated IT Solutions
 
We come in peace hybrid development with web assembly - Maayan Hanin
We come in peace hybrid development with web assembly - Maayan HaninWe come in peace hybrid development with web assembly - Maayan Hanin
We come in peace hybrid development with web assembly - Maayan Hanin
CodeValue
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGap
Joseph Labrecque
 
Amazing vue.js projects that are open source and free.
Amazing vue.js projects that are open source and free.Amazing vue.js projects that are open source and free.
Amazing vue.js projects that are open source and free.
Katy Slemon
 
Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | Introduction
JohnTaieb
 
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
Katy Slemon
 
WebAssembly (Wasm) defines a portable binary-code format and a corresponding ...
WebAssembly (Wasm) defines a portable binary-code format and a corresponding ...WebAssembly (Wasm) defines a portable binary-code format and a corresponding ...
WebAssembly (Wasm) defines a portable binary-code format and a corresponding ...
Kunal Goel
 
WebAssembly - czy dzisiaj mi się to przyda do pracy?
WebAssembly - czy dzisiaj mi się to przyda do pracy?WebAssembly - czy dzisiaj mi się to przyda do pracy?
WebAssembly - czy dzisiaj mi się to przyda do pracy?
Brainhub
 
Chapter 1 (asp.net over view)
Chapter 1 (asp.net over view)Chapter 1 (asp.net over view)
Chapter 1 (asp.net over view)
let's go to study
 
The Future Is The Cloud
The Future Is The CloudThe Future Is The Cloud
The Future Is The Cloud
Gatsbyjs
 
three_software_development_trends_to_follow_in_2016
three_software_development_trends_to_follow_in_2016three_software_development_trends_to_follow_in_2016
three_software_development_trends_to_follow_in_2016Interbrand
 
5 java script frameworks to watch in 2017
5 java script frameworks to watch in 20175 java script frameworks to watch in 2017
5 java script frameworks to watch in 2017
Designveloper
 
webdevelopmentppt-210923044639 (1).pptx
webdevelopmentppt-210923044639 (1).pptxwebdevelopmentppt-210923044639 (1).pptx
webdevelopmentppt-210923044639 (1).pptx
learnEnglish51
 

Similar to Quick overview of WebAssembly (20)

Modern JavaScript Frameworks: Angular, React & Vue.js
Modern JavaScript Frameworks: Angular, React & Vue.jsModern JavaScript Frameworks: Angular, React & Vue.js
Modern JavaScript Frameworks: Angular, React & Vue.js
 
WebAssembly WASM Introduction Presentation
WebAssembly WASM Introduction PresentationWebAssembly WASM Introduction Presentation
WebAssembly WASM Introduction Presentation
 
Reactjs Basics
Reactjs BasicsReactjs Basics
Reactjs Basics
 
Aspnet2.0 Introduction
Aspnet2.0 IntroductionAspnet2.0 Introduction
Aspnet2.0 Introduction
 
White Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and PrimeWhite Paper : ASP.NET Core AngularJs 2 and Prime
White Paper : ASP.NET Core AngularJs 2 and Prime
 
Asp Net Vs Vue JS Which One You Should Choose for Development.pdf
Asp Net Vs Vue JS Which One You Should Choose for Development.pdfAsp Net Vs Vue JS Which One You Should Choose for Development.pdf
Asp Net Vs Vue JS Which One You Should Choose for Development.pdf
 
Web Assembly Big Picture
Web Assembly Big PictureWeb Assembly Big Picture
Web Assembly Big Picture
 
Asp.net Vs Vue.js.pdf
Asp.net Vs Vue.js.pdfAsp.net Vs Vue.js.pdf
Asp.net Vs Vue.js.pdf
 
We come in peace hybrid development with web assembly - Maayan Hanin
We come in peace hybrid development with web assembly - Maayan HaninWe come in peace hybrid development with web assembly - Maayan Hanin
We come in peace hybrid development with web assembly - Maayan Hanin
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGap
 
Amazing vue.js projects that are open source and free.
Amazing vue.js projects that are open source and free.Amazing vue.js projects that are open source and free.
Amazing vue.js projects that are open source and free.
 
Front End Development | Introduction
Front End Development | IntroductionFront End Development | Introduction
Front End Development | Introduction
 
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
 
WebAssembly (Wasm) defines a portable binary-code format and a corresponding ...
WebAssembly (Wasm) defines a portable binary-code format and a corresponding ...WebAssembly (Wasm) defines a portable binary-code format and a corresponding ...
WebAssembly (Wasm) defines a portable binary-code format and a corresponding ...
 
WebAssembly - czy dzisiaj mi się to przyda do pracy?
WebAssembly - czy dzisiaj mi się to przyda do pracy?WebAssembly - czy dzisiaj mi się to przyda do pracy?
WebAssembly - czy dzisiaj mi się to przyda do pracy?
 
Chapter 1 (asp.net over view)
Chapter 1 (asp.net over view)Chapter 1 (asp.net over view)
Chapter 1 (asp.net over view)
 
The Future Is The Cloud
The Future Is The CloudThe Future Is The Cloud
The Future Is The Cloud
 
three_software_development_trends_to_follow_in_2016
three_software_development_trends_to_follow_in_2016three_software_development_trends_to_follow_in_2016
three_software_development_trends_to_follow_in_2016
 
5 java script frameworks to watch in 2017
5 java script frameworks to watch in 20175 java script frameworks to watch in 2017
5 java script frameworks to watch in 2017
 
webdevelopmentppt-210923044639 (1).pptx
webdevelopmentppt-210923044639 (1).pptxwebdevelopmentppt-210923044639 (1).pptx
webdevelopmentppt-210923044639 (1).pptx
 

Recently uploaded

GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 

Recently uploaded (20)

GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 

Quick overview of WebAssembly

  • 1. Introduction to WebAssembly Karl Ritchie December 2017
  • 2. Contents i. What is WebAssembly ii. Goals of WebAssembly iii.Workflow of WebAssembly iv.Hello World in WebAssembly v. Present and future of WebAssembly vi.Conclusion
  • 3. What is WebAssembly  “WebAssembly or wasm is a new portable, size- and load-time-efficient format suitable for compilation to the web.”  http://webassembly.org/  In other words, WebAssembly makes it possible to compile your code and run it on the Web(in a browser), similar to JavaScript.
  • 4. Goals of WebAssembly  Goals :  Portable  Fast (Compiled and executed at near native speed)  To make it easy to port your applications to the Web  Currently C/C++ is main language targeted by WebAssembly  http://webassembly.org/docs/high-level-goals/
  • 5. Workflow of WebAssembly  Simple and straight forward implementation workflow.
  • 6. Hello World in WebAssembly  Initial Setup :  Follow the Getting Started page on WebAssembly’s Website and make sure your environment is ready.  http://webassembly.org/getting-started/developers-guide/
  • 7. Hello World in WebAssembly  1. Write the C function you want to run in your browser.
  • 8. Hello World in WebAssembly  2. Compile your code. You should now see the .js “glue” code file generated by the compiler and the .wasm binary file in your directory after compiling.
  • 9. Hello World in WebAssembly  3. Write some HTML/JavaScript.
  • 10. Hello World in WebAssembly  4. Try it ! Demo
  • 11. Present and future of WebAssembly  More important features are being planned, such as threading support and also the enhancement of the developers’ tools.  Recently (2017), current WebAssembly adoption as a Web standard as been growing and being supported by major industry players.  https://blog.mozilla.org/blog/2017/11/13/webassembly-in-browsers/  Safe to assume that adoption rate should increase in upcoming months/years and make it a stable and efficient tool for Web programming.
  • 12. Conclusion  In conclusion, WebAssembly is :  Modern binary format intended to run on the Web  A tool to easily integrate C/C++ into your Web app.  A growing Web standard.