2019-07-16 18:03:18 +02:00
2018-06-20 16:33:52 -07:00
2018-06-20 16:33:52 -07:00
2018-05-12 22:37:50 -07:00
2018-04-15 16:28:04 -07:00
2018-01-22 20:41:58 -08:00
2019-07-16 18:03:18 +02:00
2018-10-04 11:02:52 +02:00
2018-06-21 08:32:20 -07:00

Haskell WebAssembly Toolkit

Goals

  • Provide a WebAssembly code generation tool for Haskell
  • Create an infrastructure for Cmm to WebAssembly code generator
  • Have Fun :)

Status

  • Lexer: supports nested block comments and all lexemes from the WebAssembly Spec
  • Parser: parses all examples from WebAssembly Core TestsSuit (including folded instructions parsing)
  • Renaming Phase: substitute identifiers with correct indexes, expand all implicit type declarations)
  • Binary format parser/serializer
  • Validation Phase: execute a verification procedure from the Spec
  • Execution Phase: implement a simple interpreter
  • Support extended Core Test Suit assertion grammar
  • Compile Core Tests to Tasty test cases and pass all tests

Todo

  • Improve error messages for text representation parsing
  • Text Representation pretty-printer
  • Command line tool for calling interpreter/compiler/validator
  • Codegen interface for type enforced generating valid WASM code

Development

Clond sources to directory and use stack for running tests:

stack build && stack test
S
Description
Haskell WebAssembly Toolkit
Readme MIT 997 KiB
Languages
Haskell 65.5%
Yacc 28.9%
Lex 5.5%
HTML 0.1%