diff options
author | Kyle Gunger <kgunger12@gmail.com> | 2021-08-30 19:07:26 -0400 |
---|---|---|
committer | Kyle Gunger <kgunger12@gmail.com> | 2021-08-30 19:07:26 -0400 |
commit | ea5ef2fe245c09b35c783977928d6e995110cfb4 (patch) | |
tree | e25f71adb433bba34b10c3a013d8b10c24f159e3 /spec/compiler | |
parent | 628dd83397c47ff484f7c81b06dcd6d1e4af628b (diff) |
Scrap old spec, add initial value parsing
Diffstat (limited to 'spec/compiler')
-rw-r--r-- | spec/compiler/compiler.txt | 23 | ||||
-rw-r--r-- | spec/compiler/pre-processor.txt | 9 | ||||
-rw-r--r-- | spec/compiler/tokenizer.txt | 0 |
3 files changed, 0 insertions, 32 deletions
diff --git a/spec/compiler/compiler.txt b/spec/compiler/compiler.txt deleted file mode 100644 index df7a591..0000000 --- a/spec/compiler/compiler.txt +++ /dev/null @@ -1,23 +0,0 @@ -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 macro operations - 2b) The validator - checks all requirements for all functions and expressions are valid - - 3) Translation - - 3a) Variable resolver - chooses and creates an internal model of where variables are on the stack, as well as calling conventions for functions - 3b) Type translator - places and translates types (internal and external) - 3c) Container resolver - checks container (elf, exe, dll, app, out, etc.) and decides how to map the types for future linking - 3d) Final translation - translates all logic and expressions into native binary code - 3e) Optimization - 3f) Container Writer - writes the final output of the previous steps into the specified container diff --git a/spec/compiler/pre-processor.txt b/spec/compiler/pre-processor.txt deleted file mode 100644 index 8297e7d..0000000 --- a/spec/compiler/pre-processor.txt +++ /dev/null @@ -1,9 +0,0 @@ -A set of components in the compiler (all before the translator) which expand, -resolve, and validate pre-processor directives into code which can be compiled - -Consists of the resolver in the parsor. -The expander and part of the indexer in the validator. - -Special (compiler specififc) definitions can be added with _<compiler>_<variable name> - -E.X. if the official implementation wanted to provide the exact time of the compilation, it could use _TNSLC_TIME_NOW for instance
\ No newline at end of file diff --git a/spec/compiler/tokenizer.txt b/spec/compiler/tokenizer.txt deleted file mode 100644 index e69de29..0000000 --- a/spec/compiler/tokenizer.txt +++ /dev/null |