You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
Makefile_dot_in 5ac5fed89c now kinda works 1 month ago
dist-newstyle/cache aaaaa 1 month ago
src now kinda works 1 month ago
README.txt aaaaa 1 month ago
README.txt~ aaaaa 1 month ago
Setup.hs aaaaa 1 month ago
project.cabal~ aaaaa 1 month ago
quick.cabal aaaaa 1 month ago
replit.nix aaaaa 1 month ago
stack.yaml aaaaa 1 month ago
stack.yaml.lock aaaaa 1 month ago

README.txt

the syntax
----------
12 - int literal
0.5 - float literal
(12, 0.5, 2) - list
{x = 2, y = 3} - table
'amogus' - string literal
"amogus {x}" - string literal with formatting
x a "test".x + a - lambda
[T.2, F.0] - a collection of partial functions; [T.2, F.0] T evaluates to 2 and [T.3, F.1] F evaluates to 1.
f x - function call
##fixity l + == >=# defines a left-associative operator == with precedence between == and >=
x:y - table access

the runtime
-----------
AAAAAAAAAA
okay so like in lua, each object has a metatable that stores useful functions and stuff
the function interface will be documented later in detail.

also the implementation does not currently compile

oh yeah also you can abbreviate variable names. so say, instead of MetaTable you can write MT

examples (do not run yet)

Some 2 >>= x.
Some 3 >>= y.
ret $ x + y

x == "amogus" | [
T."sussy",
F."not sussy"
]

(`ret` here abbreviated)