luau/prototyping
Alan Jeffrey e0a9bc191a
Prototype: added syntax for optional type annotations (#358)
2022-02-11 19:03:26 -06:00
..
Examples Prototype: added syntax for optional type annotations (#358) 2022-02-11 19:03:26 -06:00
FFI Implement a prototype interpreter (#353) 2022-02-09 17:14:29 -06:00
Luau Prototype: added syntax for optional type annotations (#358) 2022-02-11 19:03:26 -06: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

README.md

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