Block a user
Update Lezer and Tree-Sitter grammars: remove
loop
and recur
Turtle graphics protocol
Current set of things to do:
- Rework Ludus's output to be only its I/O protocol
- Rewrite all the logic from Prelude in
apply_command
,render_turtle
, andstate/call
in JS. - […
Turtle graphics protocol
@matt Any thoughts about this?
Two specific hesitations, which I'm happy to bracket for the time being (or quite a while):
- We're repeating the "proto" section with every message. On the…
Turtle graphics protocol
A simple example:
{
"stdout": {
"proto": ["text-stream", "0.1.0"],
"data": []
},
"stderr": {
"proto": ["text-stream", "0.1.0"],
"data": ["oops, I…
Turtle graphics protocol
A few thoughts, notes here:
- This is really a version of a complete I/O protocol for Ludus.
- This means that all of these are, in some sense, streams, not static objects.
- Each output of…
Disallow shadowing?
Validator now disallows shadowing of any name in any context. Next up: develop logic in validator to only check names that are explicitly bound in a script, and not names that are in Prelude.
2ec95c8f33
add loop & recur back into the language: we do actually need it!--just not *pedagogically*
Update Lezer and Tree-Sitter grammars: remove
loop
and recur
Improve parser errors on extra exprs/tokens on line
Finally figured this out. Complete in 4a069278b8
Improve parser errors on extra exprs/tokens on line