Commit Graph

8506 Commits

Author SHA1 Message Date
Kartik Agaram dc5a0acf3f .
Switch html rendering to my current colorscheme with a little less blue,
for night browsing.
2021-06-26 09:20:32 -07:00
Kartik Agaram f7a7db83ef .
Drop some long-obsolete tooling. I no longer use iTerm2.
2021-06-26 08:39:05 -07:00
Kartik Agaram 718fd031f9 . 2021-06-24 21:50:38 -07:00
Kartik Agaram ec32c11d3b .
Switch html rendering to a white background.
2021-06-24 21:46:45 -07:00
Kartik Agaram 296a5a5f12 . 2021-06-24 20:51:46 -07:00
Kartik Agaram 6f6f6384f1 . 2021-06-24 14:33:22 -07:00
Kartik Agaram 1684e3e10c . 2021-06-24 13:30:35 -07:00
Kartik Agaram eee222f14c . 2021-06-24 09:18:59 -07:00
Kartik Agaram 65077b46b4 . 2021-06-23 18:14:57 -07:00
Kartik Agaram 2c1770a349 . 2021-06-23 16:59:38 -07:00
Kartik Agaram 709902d34a . 2021-06-23 16:28:41 -07:00
Kartik Agaram e4b6665aee . 2021-06-23 16:24:56 -07:00
Kartik Agaram e0b8eddb5b . 2021-06-23 13:19:20 -07:00
Kartik Agaram a25e4c1ac2 . 2021-06-23 11:05:57 -07:00
Kartik Agaram f13e3cdfb1 . 2021-06-23 11:05:53 -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 ba0c41673b . 2021-06-23 01:01:42 -07:00
Kartik K. Agaram cfa1bac8bb . 2021-06-23 00:59:14 -07:00
Kartik K. Agaram 577123e975 one more bug 2021-06-23 00:56:39 -07:00
Kartik K. Agaram f174695400 start using infix in data disk
Still some gaps to track down.
2021-06-23 00:03:07 -07:00
Kartik K. Agaram 76ef912eb2 all tests passing again; infix seems done 2021-06-22 23:39:54 -07:00
Kartik K. Agaram 2eae06ebda infix tests passing but something's still broken 2021-06-22 23:31:51 -07:00
Kartik K. Agaram 10e9a9a8d4 2 failing tests remaining
We just need to support unary operators.
2021-06-22 23:11:55 -07:00
Kartik K. Agaram 156b74c759 almost there; this is encouraging
The at-head-of-list? is a really ugly hack, though.
2021-06-22 23:02:09 -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 f5e55cbbdb . 2021-06-22 21:57:47 -07:00
Kartik K. Agaram 0436ab71ea clean up lexical categories 2021-06-22 21:43:44 -07:00
Kartik K. Agaram 59d904b4df snapshot
Still a couple of failing tests before I switch gears to breaking down
symbols containing infix.
2021-06-22 21:25:04 -07:00
Kartik K. Agaram 5997eafd46 . 2021-06-22 21:24:06 -07:00
Kartik K. Agaram 26e9387df6 snapshot: infix
Like parenthesize, I'm copying tests over from https://github.com/akkartik/wart
Unlike parenthesize, though, I can't just transliterate the code itself.
Wart was operating on an intermediate AST representation. Here I'm all
the way down to cells. That seemed like a good idea when I embarked, but
now I'm not so sure. Operating with the right AST data structure allowed
me to more easily iterate over the elements of a list. The natural recursion
for cells is not a good fit.

This patch and the next couple is an interesting case study in what makes
Unix so effective. Yes, you have to play computer, and yes it gets verbose
and ugly. But just diff and patch go surprisingly far in helping build a
picture of the state space in my brain.

Then again, there's a steep gradient of skills here. There are people who
can visualize state spaces using diff and patch far better than me, and
people who can't do it as well as me. Nature, nurture, having different
priorities, whatever the reason. Giving some people just the right crutch
excludes others.
2021-06-22 21:23:40 -07:00
Kartik K. Agaram 74d6a4d382 . 2021-06-21 22:02:47 -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 0f071ae99b . 2021-06-20 23:09:50 -07:00
Kartik K. Agaram 77f347c181 shell: now no definitions with long lines 2021-06-20 23:07:23 -07:00
Kartik K. Agaram b195921b5f shell: shrink definition widths in a few places
The only remaining long lines now are in 'pair' and 'with'.
2021-06-20 23:07:23 -07:00
Kartik K. Agaram 3fd3f3a1c7 this is how we create aliases 2021-06-20 23:07:23 -07:00
Kartik K. Agaram 9ae724e1ec preserve indentation of the sandbox 2021-06-20 23:07:23 -07:00
Kartik K. Agaram 7045af7a4e 'with' lets us drop a few more parens 2021-06-20 22:33:05 -07:00
Kartik K. Agaram fa26249931 new macro: with 2021-06-20 22:32:03 -07:00
Kartik K. Agaram ecc763f092 new macro: ret
http://arclanguage.org/item?id=11068
2021-06-20 22:32:03 -07:00
Kartik K. Agaram deb610367f start dropping parens everywhere 2021-06-20 21:29:33 -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