luau/prototyping
Lily Brown f0c9d84461
Prototyping: Parse type annotations (#366)
Parses type annotations from the JSON output of `luau-ast`.
2022-02-15 14:10:43 -08:00
..
Examples Prototyping: Parse type annotations (#366) 2022-02-15 14:10:43 -08:00
FFI Implement a prototype interpreter (#353) 2022-02-09 17:14:29 -06:00
Luau Prototyping: Parse type annotations (#366) 2022-02-15 14:10:43 -08:00
Properties Prototype: added syntax for optional type annotations (#358) 2022-02-11 19:03:26 -06:00
.gitignore Prototyping a small subset of Luau in Agda (#350) 2022-02-08 18:26:58 -06:00
Examples.agda Add a typeToString function to the prototype (#354) 2022-02-11 14:38:35 -06:00
Interpreter.agda Prototype: added syntax for optional type annotations (#358) 2022-02-11 19:03:26 -06:00
PrettyPrinter.agda Prototype: added syntax for optional type annotations (#358) 2022-02-11 19:03:26 -06:00
Properties.agda Add a typeToString function to the prototype (#354) 2022-02-11 14:38:35 -06:00
README.md Prototyping a small subset of Luau in Agda (#350) 2022-02-08 18:26:58 -06:00

Prototyping Luau

prototyping workflow

An experimental prototyping system for the Luau type system. This is intended to allow core language features to be tested quickly, without having to interact with all the features of production Lua.

Building

First install Haskell and Agda.

Install dependencies:

  cabal update
  cabal install --lib aeson scientific vector

Then compile

  agda --compile PrettyPrinter.agda

and run!

  luau-ast Examples/SmokeTest.lua | ./PrettyPrinter