Index: readme.txt ================================================================== --- readme.txt +++ readme.txt @@ -39,6 +39,38 @@ <> - I don't know. + > polemy + starts REPL + + > polemy foo.pmy + executes foo.pmy + + + +<> + +syntax + + E ::= ("var"|"let"|"def"|LAYER) ID "=" E ; E + | "fun" "(" PARAMS ")" "{" E "}" + | E "(" ARGS ")" + + | LAYER "(" E ")" + + | "(" E ")" + | E BINOP E + | "if" "(" E ")" "{" E "}" + | "if" "(" E ")" "{" E "}" "else "{" E "}" + | ("var"|"let"|"def"|LAYER) ID "(" PARAMS ")" "{" E "}" + +ARGS ::= ","-separated E's +PARAMS ::= ","-separated VAR's +LAYER ::= "@" ID + +if-then-else is a syntax sugar for a function call: if( E, fun(){E}, fun(){E} ) +binary ops (e.g., E + E) is a syntax sugar: +(E, E) + +comment is "# ... \n" +