Kartik K. Agaram
c95648c960
reading from streams
...
The Mu shell has no string literals, only streams. No random access,
only sequential access. But I've been playing fast and loose with its
read pointer until now. Hopefully things are cleaned up now.
2021-07-03 18:27:01 -07:00
Kartik K. Agaram
6a65f6f233
one more bug, and documentation for infix
...
One error message gets a bit worse.
2021-06-23 10:06:57 -07:00
Kartik K. Agaram
aebcfd1bfb
beginnings of tokenization within symbols
...
We're now down to 4 failing tests. But these will require surgery.
2021-06-22 22:32:20 -07:00
Kartik K. Agaram
0436ab71ea
clean up lexical categories
2021-06-22 21:43:44 -07:00
Kartik K. Agaram
6669133bcf
start implementing infix
...
First step: undo operator support in tokenization.
2021-06-21 22:00:55 -07:00
Kartik K. Agaram
fa26249931
new macro: with
2021-06-20 22:32:03 -07:00
Kartik K. Agaram
6e1aa99a00
start guessing parentheses based on indentation
2021-06-20 21:18:38 -07:00
Kartik K. Agaram
9d7d99fe6c
snapshot
...
This is going better than expected; just 3 failing tests among the new
ones.
2021-06-20 20:36:47 -07:00
Kartik K. Agaram
29795a0db4
start emitting indent tokens
2021-06-18 21:42:01 -07:00
Kartik K. Agaram
e5cf570890
redo next-token in more high-level terms
2021-06-18 20:39:33 -07:00
Kartik K. Agaram
80fb9ca9f4
.
2021-06-18 20:12:32 -07:00
Kartik K. Agaram
c6cb360544
.
2021-06-18 20:08:19 -07:00
Kartik K. Agaram
93e2e3f934
start emitting token for newline
2021-06-18 20:00:29 -07:00
Kartik K. Agaram
24275c3828
newlines are now a token
2021-06-18 19:54:01 -07:00
Kartik K. Agaram
dd133c2a09
start implementing indent-sensitivity
...
General plan:
stop skipping newlines during tokenization
introduce a new indent token, initially skip it transparently
start doing cleverer things
2021-06-18 19:52:54 -07:00
Kartik K. Agaram
b5306cabd3
.
2021-06-18 19:40:35 -07:00
Kartik K. Agaram
2acc00f9b9
.
2021-06-18 07:54:24 -07:00
Kartik K. Agaram
0f2d0d6abe
shell: stop punning tokens as cells
2021-06-18 06:53:55 -07:00
Kartik K. Agaram
8014210316
shell: support negative integer literals
...
We still don't support _any_ fractional literals, positive or negative.
2021-06-06 12:39:03 -07:00
Kartik K. Agaram
79a80f7774
.
2021-06-05 23:12:13 -07:00
Kartik K. Agaram
961ce67569
.
2021-05-30 17:20:42 -07:00
Kartik K. Agaram
40c6066324
.
2021-05-30 16:41:38 -07:00
Kartik K. Agaram
9b131ce02b
.
2021-05-29 16:22:08 -07:00
Kartik K. Agaram
7b84872380
shell: non-stream tokens are now small
2021-05-29 16:07:39 -07:00
Kartik K. Agaram
0bba6ccfc2
.
2021-05-29 16:04:30 -07:00
Kartik K. Agaram
aceb526b50
.
2021-05-29 16:01:50 -07:00
Kartik K. Agaram
c2e59bbf9d
.
2021-05-29 16:00:59 -07:00
Kartik K. Agaram
6b212ed6e7
.
2021-05-29 15:54:41 -07:00
Kartik K. Agaram
d8f306c30c
.
2021-05-29 15:53:31 -07:00
Kartik K. Agaram
2ad0a98f94
.
2021-05-29 15:53:21 -07:00
Kartik K. Agaram
56c621b6f1
shell: start reducing the waste in tokenize
2021-05-29 15:49:58 -07:00
Kartik K. Agaram
119e661f20
a second place with lousy storage management
2021-05-19 23:23:49 -07:00
Kartik K. Agaram
e2ab1b30b1
disallow null traces
...
We now use traces everywhere for error-checking. Null traces introduce
the possibility of changing a functions error response, and therefore its
semantics.
2021-05-19 20:56:37 -07:00
Kartik K. Agaram
7105b73fd3
give up on nested backquotes for now
2021-05-07 09:22:54 -07:00
Kartik K. Agaram
a1cfadc749
first passing test for macroexpand
...
In the process I spent a long time tracking down a stray TODO in 108write.subx
that I thought would abort but didn't since the switch to baremetal.
Then after I reintroduced that assertion I had to go track down a bunch
of buffer sizes. Stream sizes continue to be a huge mess.
2021-05-06 21:38:02 -07:00
Kartik K. Agaram
a54c6f2ee7
belatedly migrate stale example definitions
...
Also bare-bones syntax highlighting for .limg files. Doesn't work when
.limg file is first file opened with Vim.
2021-05-06 16:42:08 -07:00
Kartik K. Agaram
93f1bee02c
reading and printing backquotes and unquotes
2021-05-03 12:02:12 -07:00
Kartik K. Agaram
d46c4b06b2
shell: comments
2021-04-29 23:48:36 -07:00
Kartik K. Agaram
24883b04f5
.
2021-04-29 23:43:17 -07:00
Kartik K. Agaram
05879d4f99
load large definitions
2021-04-29 16:10:30 -07:00
Kartik K. Agaram
d5d3e02ad4
shell: bugfix for stream literals
...
I was forgetting that callers sometimes reuse outputs between successive
tokens.
2021-04-28 16:34:40 -07:00
Kartik K. Agaram
55cde01edf
shell: stream literals
2021-04-27 23:10:30 -07:00
Kartik K. Agaram
6ecd9920ca
shell: tokenizing stream (string) literals
...
We're calling them streams since they support appending.
2021-04-27 22:48:16 -07:00
Kartik K. Agaram
16f51dd76d
.
2021-04-27 22:14:08 -07:00
Kartik K. Agaram
d0578257cd
shell: dot token
2021-04-15 08:48:53 -07:00
Kartik K. Agaram
126a0390f5
.
2021-04-15 08:47:58 -07:00
Kartik K. Agaram
26a1849895
shell: quote
2021-04-06 09:40:13 -07:00
Kartik K. Agaram
d124be9cb6
strip spaces when tokenizing
...
Thanks Max Bernstein for reporting this.
2021-03-08 17:54:07 -08:00
Kartik Agaram
1a1a1671ed
7866
2021-03-07 19:46:21 -08:00
Kartik K. Agaram
bcde6be528
7857 - shell: first function call
2021-03-05 15:18:46 -08:00