Coder Social home page Coder Social logo

appcypher / awesome-wasm-langs Goto Github PK

View Code? Open in Web Editor NEW
4.1K 111.0 192.0 296 KB

๐Ÿ˜Ž A curated list of languages that compile directly to or have their VMs in WebAssembly

webassembly wasm programming-language language web astro c csharp cpp java

awesome-wasm-langs's Introduction

matrix

๐Ÿ‡

awesome-wasm-langs's People

Contributors

andrewhassan avatar appcypher avatar chai2010 avatar chicoxyzzy avatar erlend-sh avatar gecko0307 avatar justinclift avatar maxgraey avatar mgrojo avatar mirkosertic avatar n-ce avatar oayomide avatar pannous avatar philpax avatar pierceng avatar poorna2152 avatar remko avatar rencire avatar risavkarna avatar rla avatar shalokshalom avatar shritesh avatar spekulatius avatar stefano avatar stevugnin avatar thefenriswolf avatar tniessen avatar tomashubelbauer avatar vasilev avatar xeqlol avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-wasm-langs's Issues

Wasm2lua

This list doesn't include wasm2lua, which compiles WebAssembly modules to Lua. Should it be included here?

Low Level Lisp

I have noticed that you marked the Wracket language as unmaintained. The project was interesting, so it is a pity that the author discontinued his work. However, Low Level Lisp shares the same philosophy as Wracket, therefore, it is a good candidate to the list of awesome-wasm-langs. Low Level Lisp is actively maintained and well documented. It has a few advantages over Wracket: (1) The wasCm compiler generates sexpr, instead of strings; (2) It shares its linear memory with Javascript; (3) It deals correctly with local variables; (4) It can use Javascript for input/output; (5) Its programs can be executed in Lisp, as well as in WebAssembly. Here is the page:

https://github.com/FemtoEmacs/wasCm

RustPython

The RustPython compiler has been compiled to WebAssembly: should it be included in the list of Python implementations?

Python Batavia does not use webassembly

searching for wasm or WebAssembly shows nothing in the code or filenames for the repo, and the repo specifically says it only works after the python bytecode has already been compiled

Requirements of List Unclear

In the lede it says:

This repo contains a list of languages that currently compile to or have their VMs in WebAssembly(wasm)

But then the first link is "DotnetWebAssembly" which is not a compile-to-wasm library/language. Can you clarify?

Suggestion for language implementation additions

TypeScript

Lisp/Scheme-like languages:

Rebol

Toy implementations:

emscripten-based

These language implementations support emscripten so in theory should be compilable to Wasm, although I've only seen JS builds so far:

Add MicroPython

MicroPython already have an official WebAssembly port

Also I made an NPM module to use it on Node or Webpack here

Talk about WASI

I really apreciate you're referencing work !

I'm really interested in the most recent developements of webassembly, and I'm surprised you don't talk about WASI.

Wasi is a standard developed by bytealliance to be able to execute any wasm module outside the browser, by a runtime or by importing functions from another language.

There are some languages/compilers in the list that compile to webassembly, but doesn't implement this interface. As a result, you have to import some functions that are not at all standardized to run this assembly, so you must use javascript glue for I/O for example. They can't run outside the browser !!!

For example that is the case with emscripten: it implements non-standard functions, so you can't run it without javascript.

I think rust, c, cpp and go are the only languages that compile to this interface. You can look here

So it would be nice to present all the languages in a table, indicating if they compile to this standard or not.

Create `Unmaintained` & `Production` Categories

Transfering all the unmaintained languages to its own category.

Also have the top category to be Production where we have languages that are already having software in production not languages that can be used in production.
This would at least include :

  • C
  • C++
  • Rust
  • Go (although im not aware of go-wasm based software)

Blazor is no longer experimental

Your Readme says that Blazor is "an experimental web UI", which is no longer true. It became a fully developed and supported part of ASP.NET last November, and is in production use in many sites around the the net.

Please update your docs. Thanks for maintaining this list.

Split the list

IMHO, this list needs to be split into two:

  • Languages that target wasm (i.e. emit wasm binaries, like AssemblyScript)
  • Languages that run on top of wasm (i.e. are interpreted, like Lua, Prolog, ...)

Is the Grain language support of Wasm still ๐Ÿฅš (Work in progress)

Hi there,
I found another reference of languages that support Wasm (fermyon reference), but I see some differences.
For example, in this repo, it is stated that Grain language doesn't have very usable support of Wasm, but in the fermyon reference it is stated that it has production level support.
It will be helpful if you provide more info about that. I'll ask the same question in their repo so I hope to find which one is more accurate.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.