The last two weeks have been absolutely crazy! I have been laser-focused on wrapping up what I've been calling Forte Phase 0: the work before the work.
Phase 0's primary focus was on the core lexer and parser, and I am pleased to say that it is now in a private alpha testing phase. I won't rehash many of the intricate details here, but rest assured that numerous edge cases needed to be handled, and several complex problems were solved.
#Moving on to Phase 1
Forte's development has been roughly broken out into the following phases:
- Phase 0: Lexer and Parser
- Phase 1
- Basic AST visitor/traverser implementation
- Expand the
Node
API with useful utilities for navigating the AST - Secret Task #1
- Secret Task #2
- Continue bug fixes and improvements
- Phase 2
- Continue work on secret projects
- Documentation
- Improvements to AST manipulation and traversal
- Querying the AST with DSLs, such as CSS-like selectors (Tentative)
I recently started Phase 1, with the initial focus on implementing the basic AST visitor and traverser system. Now, Phase 1 will ship the basic implementation, but I am actually fleshing out what I want the entire system to look like.
This initial version of the whole system will undoubtedly have bugs and issues: that's okay. I need to ensure that the foundations I lay in Phase 1 will technically support it without requiring a lot of subsequent adjustments.
Build the hard part first.
Once I arrive at what I want for the final form, I will start stripping back layers to expose the simplest, most useful version and work to fine-tune it, add tests, and then release it to the private beta group.
Phase 1 also includes some secret projects. I can't do those without the AST utilities, so I'll get back to work.
∎