This looks great! I've actually been experimenting with making a functional language too, in rust - so I'm probably gonna read through the code soon! Also, those error messages look really good - I'm totally gonna try ariadne and chumsky out :)
Good luck! Feel free to open a discussion topic or issue if you have any questions!
Since someone brought it up, and since I don’t speak rust… are the error message formats (i.e. the lines and crossings) made by a rust library or did you implement them? They are certainly visually nice.