diff options
| author | CCGKyle <corechg@gmail.com> | 2021-01-20 10:33:41 -0500 | 
|---|---|---|
| committer | CCGKyle <corechg@gmail.com> | 2021-01-20 10:33:41 -0500 | 
| commit | 60f7c4f7272079e635010e464d8ce3a3a427f97f (patch) | |
| tree | f76d5b73f1d01a3d0dd0149ddb8f470b0b092749 /spec/compiler/compiler.txt | |
| parent | 4bcbc40328a16aa8f53f69bb304784d9b5d5729b (diff) | |
Add specification to the repo.  To be updated as the language evolves.
Diffstat (limited to 'spec/compiler/compiler.txt')
| -rw-r--r-- | spec/compiler/compiler.txt | 18 | 
1 files changed, 18 insertions, 0 deletions
diff --git a/spec/compiler/compiler.txt b/spec/compiler/compiler.txt new file mode 100644 index 0000000..dbc64c0 --- /dev/null +++ b/spec/compiler/compiler.txt @@ -0,0 +1,18 @@ +The "compiler" of the TNSL language is formed of several parts, each discussed +in their own file. + +	1) Parsing +	 +		1a) The tokenizer - chews up .tnsl files and spits out tokens +		1b) The file resolver - interperets import commands and creates a tree of files to compile +		1c) The definer -  +		1d) The AST generator - indexes tokens and provides some rudimentary syntax checking +	 +	2) Validation + +		2a) The expander - expands pre-processor commands and macrosoperations +		2b) The validator - checks all requirements for all functions and expressions are valid + +	3) Translation + +		3a) ???
\ No newline at end of file  |