Variadic functions, Nil type and many bug fixes
Features
- Variadic functions in the
...args
form. - New Nil data type.
Improvements
- Short circuit boolean AND and OR.
- Open functions scope to allow calling other functions.
- Pipe operator supports any data type.
- Dictionary keys can be of any data type.
- Return nil on inexistent dictionary keys instead of runtime error.
- Return nil on inexistent array keys instead of runtime error.
- Empty or placeholder array index assignment appends a value to the array.
- Division by zero triggers a runtime error.
- Arrays or dictionaries can be compared with comparison operators.
Bug Fixes
- Assignment would update the current block scope, but not the parent.
- Multiple calls on a function would carry over the scope.
- Return in
for in
loop wouldn't cause the loop to stop and return a value immediately.