How is The Semel Editor (TM) like a compiler front end?

How to use a compiler front end:

  1. Use a text editor to create text files
  2. Use a compiler front end to convert text files into intermediate language:
    1. Use the file system to locate, open, and read the text files
    2. Use lexical analysis to convert characters into tokens
    3. Use syntax analysis to convert the tokens into an abstract syntax tree
    4. Use semantic analysis to convert the abstract syntax tree into intermediate language

When the compiler front end is finished, the compiler back end converts the intermediate language into assembly language, then the compiler throws away the intermediate language.

Using the file system is disk-bound, so it is relatively slow.

Reading the text files is disk-bound, so it is relatively slow.

If you modify the text files (or even if you don't), and you re-compile the text files, then you do all of that work again, and you lose all of the results again.

How to use The Semel Editor (TM):

  1. Use The Semel Editor (TM) to create semels

When The Semel Editor (TM) is finished, it stores all of the semels.

The Semel Editor (TM) does not use the file system.
The Semel Editor (TM) does not read text files.
The Semel Editor (TM) does not do lexical analysis.
The Semel Editor (TM) does not do syntax analysis.
The Semel Editor (TM) does not do semantic analysis.
The Semel Editor (TM) does not throw away anything.

Compiler front end -vs- The Semel Editor ®