Unsolicited feedback: I read the name an Enzo (n-zo) until I read the readme and realized it was Ezno (es-no).
Since in a previous post [0] you say you're unsure on the name, Enzo could be a good one if this is a common mistake.
Naming still remains the hardest programming problem ...
[0] https://enso.org
It’ll have different associations to different people. Good reason to just add to it.
In general I'm kind of skeptical of the approach these rewrite in rust/go projects are going. Maybe as wasm plugins for hot paths in existing tools, but it's not clear to me that the full rewrites are where we want to be long term as a community.
I think the HN title is pretty misleading.
For example, I could see this (or something similar) being useful as the engine for a typescript language server that would be faster than the standard one
But if it's not aimed at 1:1 with tsc, would it be intended more for something like swc[1]?
Or what would you expect people to use this for, besides just being a cool project to learn from?
It would be awesome if you finished it :]
Some pointers from this stackoverflow discussion:
https://stackoverflow.com/questions/52148566/is-the-typescri...
It tends to take a lot of RAM, but the speedups possible are 3-5 orders of magnitude in the projects I've studied.
Here's a parallel C++ library to do so that requires relatively minor changes to the original algorithm. [1] [2]
I also believe it would be possible to develop a compiler framework to do the transformation mostly automatically, using an MLIR dialect.
[0] https://en.wikipedia.org/wiki/Incremental_computing
[1] https://dl.acm.org/doi/pdf/10.1145/3409964.3461799
[2] Source code: https://github.com/cmuparlay/psac