Sqisp
Features
Data Types
- Numbers
- Strings
- Keywords
- Nil
- Bools
- Hash-maps
- Hash-sets
- Vectors
Special Forms
-
bis
:: Namespace for builtin sqf functions -
global
:: Intern global bar auto munging sqf varname -
if
:: If/Else expression -
do
:: Do IIFE expression syntax -
let
:: Define private variables for implicit do -
+,/,-,*,%
:: Basic math forms compiling to infix notation -
>=,>,=,<,<=
:: Compirson infix operators -
fn
:: Define lambda expressions -
quote
:: Yield unevaluated form -
throw
:: Throw an exception -
try/catch
:: Catch exceptions in calls -
defmacro
:: Define compile time macros
Compiler Features
- Sequence destructuring
- Hash-map destructuring
- Compile time syntax exceptions
- Undefined var exceptions
- Syntax errors
- Macro expansion syntax
- Standard Library
Macros
-
cond
-
->
-
->>
-
as->
-
defn
-
if-not
-
when
-
unless