mu/apps
Kartik Agaram c48ce3c8bf 6153 - switch 'main' to use Mu strings
At the SubX level we have to put up with null-terminated kernel strings
for commandline args. But so far we haven't done much with them. Rather
than try to support them we'll just convert them transparently to standard
length-prefixed strings.

In the process I realized that it's not quite right to treat the combination
of argc and argv as an array of kernel strings. Argc counts the number
of elements, whereas the length of an array is usually denominated in bytes.
2020-03-15 21:03:12 -07:00
..
README.md 5868 2020-01-02 12:27:35 -08:00
assort 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
assort.subx 6089 2020-03-06 18:09:16 -08:00
braces 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
braces.subx 6014 2020-02-17 15:26:49 -08:00
calls 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
calls.subx 6046 2020-02-21 18:43:16 -08:00
crenshaw2-1 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
crenshaw2-1.subx 6089 2020-03-06 18:09:16 -08:00
crenshaw2-1b 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
crenshaw2-1b.subx 6089 2020-03-06 18:09:16 -08:00
dquotes 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
dquotes.subx 6089 2020-03-06 18:09:16 -08:00
ex1 5856 2020-01-01 17:23:29 -08:00
ex1.mu 5872 2020-01-02 14:12:46 -08:00
ex1.subx 6089 2020-03-06 18:09:16 -08:00
ex2 5856 2020-01-01 17:23:29 -08:00
ex2.2.mu 5936 - permit commas everywhere 2020-01-27 14:14:40 -08:00
ex2.mu 5860 2020-01-01 20:31:01 -08:00
ex2.subx 6089 2020-03-06 18:09:16 -08:00
ex3 5856 2020-01-01 17:23:29 -08:00
ex3.2.mu 6139 2020-03-12 01:18:29 -07:00
ex3.mu 6004 2020-02-14 01:44:07 -08:00
ex3.subx 6089 2020-03-06 18:09:16 -08:00
ex4 5856 2020-01-01 17:23:29 -08:00
ex4.subx 6089 2020-03-06 18:09:16 -08:00
ex5 5856 2020-01-01 17:23:29 -08:00
ex5.subx 6089 2020-03-06 18:09:16 -08:00
ex6 5856 2020-01-01 17:23:29 -08:00
ex6.subx 6089 2020-03-06 18:09:16 -08:00
ex7 5856 2020-01-01 17:23:29 -08:00
ex7.subx 6089 2020-03-06 18:09:16 -08:00
ex8 5856 2020-01-01 17:23:29 -08:00
ex8.subx 6089 2020-03-06 18:09:16 -08:00
ex9 5856 2020-01-01 17:23:29 -08:00
ex9.subx 6089 2020-03-06 18:09:16 -08:00
ex10 5856 2020-01-01 17:23:29 -08:00
ex10.subx 6089 2020-03-06 18:09:16 -08:00
ex11 5856 2020-01-01 17:23:29 -08:00
ex11.subx 6089 2020-03-06 18:09:16 -08:00
ex12 5856 2020-01-01 17:23:29 -08:00
ex12.subx 6089 2020-03-06 18:09:16 -08:00
ex13 6088 - start using setCC instructions 2020-03-06 17:42:17 -08:00
ex13.subx 6089 2020-03-06 18:09:16 -08:00
ex14 6090 - new instruction: multiply by immediate 2020-03-06 18:34:27 -08:00
ex14.subx 6090 - new instruction: multiply by immediate 2020-03-06 18:34:27 -08:00
factorial 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
factorial.mu 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
factorial.subx 6089 2020-03-06 18:09:16 -08:00
factorial2.subx 6089 2020-03-06 18:09:16 -08:00
factorial3.subx 6089 2020-03-06 18:09:16 -08:00
factorial4.subx 6143 2020-03-14 01:06:27 -07:00
handle 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
handle.subx 6089 2020-03-06 18:09:16 -08:00
hex 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
hex.subx 6089 2020-03-06 18:09:16 -08:00
mu 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
mu.subx 6152 - fix regression in factorial.mu 2020-03-15 16:44:55 -07:00
mulisp.subx 6014 2020-02-17 15:26:49 -08:00
pack 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
pack.subx 6089 2020-03-06 18:09:16 -08:00
random 5522 - example app: random number stream 2019-08-20 00:20:38 -07:00
random.subx 6089 2020-03-06 18:09:16 -08:00
sigils 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
sigils.subx 6089 2020-03-06 18:09:16 -08:00
subx-params.subx 6094 - new 'compute-offset' instruction 2020-03-07 17:40:45 -08:00
survey 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
survey.subx 6094 - new 'compute-offset' instruction 2020-03-07 17:40:45 -08:00
tests 6153 - switch 'main' to use Mu strings 2020-03-15 21:03:12 -07:00
tests.subx 6089 2020-03-06 18:09:16 -08:00

README.md

Some apps written in SubX and Mu, in 3 categories:

  • ex*: small stand-alone examples that don't need any of the shared code at the top-level. They each have a simple pedagogical goal. Try these first.

  • Code unique to phases of our build toolchain:

    • Core SubX: hex, survey, pack, dquotes, assort, tests
    • Syntax sugar for SubX: sigils, calls, braces
    • More ambitious translator for a memory-safe language (in progress): mu
  • Miscellaneous test programs.