Notes on EmbeddedScript

This commit is contained in:
2020-12-09 13:05:46 -07:00
parent b8492c1e8e
commit 89bbd52cfc

View File

@@ -11,10 +11,10 @@ import kiss.Kiss;
typedef Command = () -> Void; typedef Command = () -> Void;
/** /**
Utility class for making embedded Kiss-based DSLs. Utility class for making statically typed, debuggable, embedded Kiss-based DSLs.
Basic examples: Basic examples:
kiss/src/test/cases/DSLTestCase.hx kiss/src/test/cases/DSLTestCase.hx
projects/aoc/year2020/BootCode.* projects/aoc/year2020/BootCode.hx
**/ **/
class EmbeddedScript { class EmbeddedScript {
var instructionPointer = 0; var instructionPointer = 0;
@@ -66,7 +66,9 @@ class EmbeddedScript {
}); });
} }
// TODO also allow label setting and multiple commands coming from the same expr? // TODO also allow label setting and multiple commands coming from the same expr?
// Multiple things could come from the same expr by returning begin, or a call to a function that does more stuff
// i.e. knot declarations need to end the previous knot, and BELOW that set a label for the new one, then increment the read count // i.e. knot declarations need to end the previous knot, and BELOW that set a label for the new one, then increment the read count
// TODO test await
}); });
classFields.push({ classFields.push({