DISCLAIMER: These notes are from the defunct k8 project which precedes SquirrelJME. The notes for SquirrelJME start on 2016/02/26! The k8 project was effectively a Java SE 8 operating system and as such all of the notes are in the context of that scope. That project is no longer my goal as SquirrelJME is the spiritual successor to it.
I believe rather than having complex stuff pertaining to management of pipelines and segments of pipelines, I will instead have API based front-ends which act as simple compiler interfaces for example with javac and c99. This is not an actual program, but rather just an invocation interface. The internal API could still be used, but the front end plugin would manage most of it simply.
Just thought that having an output class format, is rather dumb because class files are just binary containers of sorts. Not an actual language, so this simplifies things and I need a binary format container of sorts.
I believe I am just over complicating thing still. I will just have translation of languages which could be output into binary formats possibly. A raw translation interface for converting between languages.
Had an idea of how I can solve this. I must keep the plugins for language translation as simple as possible. Translation must take a single map argument which contains the input file to read and such, which creates another map or list. So input translations are simply translated to output.