~kf5jwc/imp-parser

1751e8d6 — Kyle Jones 2 years ago master
Re-package!
9a694fa0 — Kyle Jones 2 years ago
I've done more type annotating, which.... helped?

There's a confusing structure which this project has. For some reason the "generic" parser imports from the imp specific structures, which it should not. It also needs things imported in specific orders now, which super confuses me.
4a8b0d0c — Kyle Jones 2 years ago
More typing!
a91cece8 — Kyle Jones 2 years ago
Package it!
1701609a — Kyle Jones 2 years ago
The imp parser works! Neato.
52b5dbfa — Kyle Jones 2 years ago
Define evaluators on our AST tree elements
88282531 — Kyle Jones 2 years ago
Splitting AST into logically named modules
a71266c2 — Kyle Jones 2 years ago
Add the imp parse to take advantage of our parser.

Our parser kind of lost its generic qualities. The keywords and loop structures for IMP are in the plain parser, now.
6c93926d — Kyle Jones 2 years ago
Implement parser logic using our AST elements

They make a bit more sense, but they seem very confusing to use, much less implement. I still don't understand them.
82f5ac20 — Kyle Jones 2 years ago
Some AST elements

Again, what these specifically are or mean is not entirely clear to me yet.
d34a34a3 — Kyle Jones 2 years ago
attrs lib is a *thiiiing* and I love it.
687e45c3 — Kyle Jones 2 years ago
Implementing basic combinators for parsing

I'm actually rather... unclear about the function of much of these.
I wonder if there was a way I could have made them more clear, or if this is a good way I don't understand yet.
111c0610 — Kyle Jones 2 years ago
Defining a lexer is simple enough

Ordering token patterns by specificity is super important
I've traded out constants for Enums, since python did not support them when this guide was posted.
84c353bc — Kyle Jones 2 years ago
A generic lexer!