It wouldn't be idiomatic Uxntal but there's a relatively simple modification where load/store is from RAM space but jump/pc is from ROM space. For a subset of existing programs it would work fine, although the assembler…
That's a fair point. A few of us have been discussing a modified Varvara spec that limits the system to a smaller amount of memory (e.g. 32k, 16k, or 8k). I think with a spec like that it would unlock many…
I'm not sure that's true. I have an eZ80-based emulator for the AgonLight2 that is already running well enough to run some real (console-based) ROMs: https://git.phial.org/d6/uxn-ez80/ (I'm new to eZ80 assembly so the…
yes, that is the actual construction: the disjunction data type only supports a lhs and rhs, so that is the only possible way to represent it. i wrote it the way i did for clarity in the comments.
negation (~α): strings not matched by α difference (α - β): strings matched by α but not β intersection (α & β): strings matched by α and β exclusive-or (α ^ β): strings matched by α or β but not both inclusion (α > β):…
you're right. inclusion/intersection/etc. aren't actually computed via DFA but instead are computed directly on the regular expression representation itself. and large disjunctions (with 256 branches) are what is very…
the library uses a fairly simple data representation where x{m,n} is compiled using conjunction and disjunction. so x{1,4} ends up being represented as x|xx|xxx|xxxx. this simplifies the code for testing equality and…
interesting! what would [ab]* be? for computing an ordinal number the only real difficulty is how to handle kleene star: given ord(X) how do we calculate ord(X*)? but as you probably noticed i'm a bit out of my depth…
expressions like (...){1,256} are very heavyweight and the scala JS code ends up timing out or crashing the browser. if you replace that with (...)+ then it seems to work (at least for me). smaller expressions like…
normally you would use an ordinal number [1] to label individual elements of an infinite set while using a cardinal number [2] to measure the size of the set. i believe the cardinality of a set of words from a finite…
the page actually does give these. for α := [a-z]{2,4} the page gives |α| = 475228. however, as others have pointed out any non-trivial use of the kleene star means the result will be ∞. in this case the page will list…
It wouldn't be idiomatic Uxntal but there's a relatively simple modification where load/store is from RAM space but jump/pc is from ROM space. For a subset of existing programs it would work fine, although the assembler…
That's a fair point. A few of us have been discussing a modified Varvara spec that limits the system to a smaller amount of memory (e.g. 32k, 16k, or 8k). I think with a spec like that it would unlock many…
I'm not sure that's true. I have an eZ80-based emulator for the AgonLight2 that is already running well enough to run some real (console-based) ROMs: https://git.phial.org/d6/uxn-ez80/ (I'm new to eZ80 assembly so the…
yes, that is the actual construction: the disjunction data type only supports a lhs and rhs, so that is the only possible way to represent it. i wrote it the way i did for clarity in the comments.
negation (~α): strings not matched by α difference (α - β): strings matched by α but not β intersection (α & β): strings matched by α and β exclusive-or (α ^ β): strings matched by α or β but not both inclusion (α > β):…
you're right. inclusion/intersection/etc. aren't actually computed via DFA but instead are computed directly on the regular expression representation itself. and large disjunctions (with 256 branches) are what is very…
the library uses a fairly simple data representation where x{m,n} is compiled using conjunction and disjunction. so x{1,4} ends up being represented as x|xx|xxx|xxxx. this simplifies the code for testing equality and…
interesting! what would [ab]* be? for computing an ordinal number the only real difficulty is how to handle kleene star: given ord(X) how do we calculate ord(X*)? but as you probably noticed i'm a bit out of my depth…
expressions like (...){1,256} are very heavyweight and the scala JS code ends up timing out or crashing the browser. if you replace that with (...)+ then it seems to work (at least for me). smaller expressions like…
normally you would use an ordinal number [1] to label individual elements of an infinite set while using a cardinal number [2] to measure the size of the set. i believe the cardinality of a set of words from a finite…
the page actually does give these. for α := [a-z]{2,4} the page gives |α| = 475228. however, as others have pointed out any non-trivial use of the kleene star means the result will be ∞. in this case the page will list…