Published in Laravel

Where Things get Good: Moving on to Forte Development Phase 1

By John Koster

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.