A functional language with strong static typing, focused on reliability.
{
// settings.json
"[awsum]": {
"editor.formatOnSave": true,
"editor.defaultFormatter": "awsum-lang.awsum-vscode"
}
}
ghcupbrew install lua (for targeting Lua)stack buildstack install~/.local/bin is in PATHawsum build FILE [-t js] [-o OUT] — compile to target and
write to file (or stdout).
awsum run FILE [-t js] [--input TEXT | --stdin] — compile
to a temp file and execute with the system runtime, passing input to
main.
awsum check FILE — parse and typecheck; prints
OK or a descriptive error.
awsum format FILE [-i|--in-place] —
render . parse with stable formatting. Preserves comments
(including trailing inline), keeps a blank line between top-level
blocks, and ends the file with a trailing newline.
awsum ast FILE — pretty-print the surface AST (for
debugging).
awsum core FILE — print elaborated/lowered Core (post type
elaboration) (for debugging).
awsum --version — show versionExamples:
awsum build test/sources/hello.aww -t js -o out.js && node out.js "world"
awsum build test/sources/hello.aww -t lua -o out.lua && lua out.lua "world"
awsum run test/sources/hello.aww -t js --input "world"
awsum run test/sources/hello.aww -t lua --input "world"
echo "world" | awsum run test/sources/hello.aww -t js --stdin
echo "world" | awsum run test/sources/hello.aww -t lua --stdin
awsum check test/sources/hello.aww
awsum format test/sources/hello.aww -i
awsum ast test/sources/hello.aww
awsum core test/sources/hello.aww
awsum --version
AWSUM keyword of the
LOLCODE
language.
Compiler repository: github.com/awsum-lang/awsum