Syntax
Comments
Code comments start with a pound sign `#` and end at the next new line.
# I am a comment
Scope
Variable scope uses curly brackets `{` and `}`. Variables in an inner scope will shadow the same identifiers in an outer or global scope.
set x = 0
{
set x = 1
{
set x = 2
}
}
Special Variables
GLOBALS | Table of all global variables |
PATHS | List of possible paths to find scripts |
IMPORTS | Table of absolute paths for imported scripts |
Reserved Words
and | Logical operator where two conditionals must be true |
break | Breaks out of the current loop |
continue | Continues on to the next iteration of the current loop |
elif | Used for an additional conditional statement following an if statement |
else | Non-matching condition as part of an if statement |
except | Used at the end of a try block to capture an exception |
false | Boolean false value |
for | Creates a loop to iterate over a value or sequence |
func | Defines a new function |
if | Creates a conditional statement |
in | Used in a for loop for specifying a value to iterate over |
set | Used to declare a new variable |
none | None type that represents the absence of a value |
or | Logical operator where one or both conditions must be true |
return | Exits the current function |
throw | Generates an exception |
true | Boolean true value |
try | Begins a try block |
use | Imports a Hymn script |
while | Creates a loop that will not end until the given condition is true |