summaryrefslogtreecommitdiff
path: root/spec/1 - language.md
diff options
context:
space:
mode:
Diffstat (limited to 'spec/1 - language.md')
-rw-r--r--spec/1 - language.md4
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"