dunham
Joined 17 years ago
Joined 17 years ago
Lean4 takes this to an extreme and has "syntax categories" (e.g. expression), each of which has something like a pratt parser. Ambiguity is broken by taking the option that makes the most progress, and it is made efficient by memoization. You can add syntax at compile time, down to the lexing level. There is an example that adds HTML-like syntax and uses it later in the same file.
https://github.com/leanprover/lean4/blob/0f2eaa6e776255083f9...
(I'm not saying changing the language on the fly is a good idea, but it's interesting that they pulled it off.)
I was afraid of that. I grabbed a 2024-04-20 copy as a backup, in case it turned to slop, but I suspected it might be tainted already.
But, as an adult, I don't really make the time for games anymore. I've been sitting on Baldur's Gate 3 (maybe an hour or two in) for years.
It's TeX in wasm implemented by writing a pascal to wasm compiler, which seemed like a novel approach. (TeX is written in pascal and typically translated to C before building.)
TeX itself is a 500kb wasm file (compresses to 90k), but the images get much bigger with things like LaTeX pre-loaded.
(The author uses it to run tikz in a browser in this repository: https://github.com/kisonecat/tikzjax)
But I've found that a lot of news sites are bearable with javascript disabled. On chrome desktop, you can do that per site via the site settings in the location bar. On iOS, I'm using Quiche browser. It's subscription, but it can disable javascript per site and has auto dark mode functionality.
These days, I try avoid them outside of makefiles.
https://news.ycombinator.com/item?id=22336284
It is one person and one project, but I found it interesting to read about his experience.
I like Go, but I probably would have tried Rust first because I want pattern matching when implementing languages.
Sharing aside, I imagine a plain text format would also be helpful for version control.
Essentially a digital pinboard, it was an interesting experiment in "designed for tablet" UX and was developed far enough to be an app. The gesture based UX, nested board, PDF reader, and transclusion of PDF fragments are all interesting ideas.
[1]: https://www.inkandswitch.com/muse/ [2]: https://allume.com/
I'm interested in programming language theory, compression, and cryptography. Recently I've been helping out with the Idris2 language and wrote the dependent typed language Newt.
https://dunhamsteve.github.io