ID:1346999
 
Applies to:Dream Maker
Status: Open

Issue hasn't been assigned a status value.
I dont imagiane this would be too hard to implement, since, from what I can tell, everything is parsed into an abstract syntax tree, then that tree is just recrusivly blitted into bytecode later on when writing the DMB, it should be possible to save that syntax tree (with the files modification date) for faster compilation
I don't know enough about the parser's data structures to know if or how this would work. Presumably all I'd need to know would be which nodes went with which file, and which strings were in use so they could be converted back to internal IDs when the object file was loaded. But that's way easier said than done.
It'd make more sense to change how the compiler worked a bit, but that'd obviously be a lot harder
From what I can tell, right now, it basicaly acts as if the DME is what its compiling and just expands all include statements, if it was changed to instead compile each file separately it would be easier to do, but that would cause some problems with defines (although, right now, defines are already problematic since you have to get the files with them included first in the dme), in that case it'd make sense to have a list of files that are automatically included in every file

But what I described above would sadly break backwards compability, although you could cheat backwards compability in by basicaly doing the old method, it wouldent benefit from incremental compiling