diff options
Diffstat (limited to 'spec/1 - language.md')
-rw-r--r-- | spec/1 - language.md | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/spec/1 - language.md b/spec/1 - language.md index cb03215..3e7aaa4 100644 --- a/spec/1 - language.md +++ b/spec/1 - language.md @@ -18,7 +18,7 @@ TNSL files contain the .tnsl extension and contain one or more of the following: - Method and interface blocks - Constant, variable, and type definitions -TNSL files may only contain the following enclosed in function blocks: +TNSL files may only contain the following enclosed in function or method blocks: - Re-assignment of variables - Control flow blocks - Use of variables in definition of variables @@ -113,6 +113,8 @@ TNSL functions may have their call stack modified by the `raw` and/or `inline` k The use of the `raw` keyword has several effects: the function will have no generated assembly preamble, the function will allow `raw return` statements, the function will not be optimized, and the function will allow `asm` statements. Any function may be labeled `raw`, even `main` and anonymous functions. +Functions *may* be overloaded (that is, two functions may share names but have differing input type lists). Overloaded functions *may not* share the same inputs and differing outputs, but *may* have both differing inputs and differing outputs. + Examples: # simple function with no inputs or outputs named "my_function" |