Just foxing about.
Above all, do no harm.
See https://lobste.rs/s/6bphbw/fennel_programming_language_rationale . We have some of this but it's mostly in the form of loose notes in a couple different places. The basic idea is "be the C to Rust's C++", but "how" is going to need a lot of work.
This can probably be put off until we can actually add features again though.
Basically everything should return errors with lists of codespan Diagnostics, which then get output at the top level.
Handling of the
Filesstructure might be kinda squirrelly, but I think it's doable.
It would be hilarious.
Cargo already supports custom repository locations, and you can tell it to use a different compiler than
rustc. The main questions are: how does it build dependency trees, how does it link stuff, and what other problems are there that I don't know about yet?
Duplicate of #6
REPORTED RESOLVED DUPLICATE
Currently the AST is very simple, just a tree of nodes with no idea what the original source is. There's two issues with this:
- Error reporting. We need nodes to have code spans pointing to the original text.
- Comments get lost. It would be nice to have comments preserved so we can trivially make a re-formatter. But since comments can be anywhere, basically, this gets annoying with designing the AST and parser. (Doc comments are somewhat different 'cause they can only be at fixed places in the syntax tree anyway.)