making good progress on my parser, and now i'm thinking of committing some crimes >:3
that being having both `and` and `&&`, and `or` and `||`, where the latter coerces to bool and the former does not and acts like lua >_>
making good progress on my parser, and now i'm thinking of committing some crimes >:3
that being having both `and` and `&&`, and `or` and `||`, where the latter coerces to bool and the former does not and acts like lua >_>
in less trolling news i'm really liking the way if/while/etc blocks work in this syntax. either you do this
if x { ... }
or you do
if x: print "single line";
so the colon delineates the end of the condition but is optional if you have a {} block instead of a single line. and yes, this is also valid:
if x: { ... }
Trying to think of what's left for my parser before I can start writing and compiling actual programs. Right now all it knows is integers. I guess if I expose some stuff to interact with memory handles and the VM's system calls I could make real programs?
It'd be nicer to have like, actual pointers and strings and arrays though, but that's a lot more work. So maybe I should just do the quick and dirty way for now?