Link Search Menu Expand Document


Connery is based on Lispy and like Lispy has two primary statement types, S-Expressions and Q-Expressions.


An S-Expression or Symbolic Expression is evaluated as soon as it is encountered. You can think of it just like a expression that you would encounter in any other programming language. S-Expressions are wrapped in parentheses.

(print "This string will be printed.")
This string will be printed.
(+ 1 1)


A Q-Expression or Quoted Expression is just like an S-Expression except it is not evaluated immediately, instead Q-Expressions can be saved for later evaluation, this is useful for defining functions. Q-Expressions are wrapped in curly brackets.

; A function can be defined with a Q-Expression
; And then later used
(FUNCTION_NAME "Hello, World!")
Hello, World!


Dictionaries are a data type backed by a hash map that allows you to store any other value and look it up by key. They can be created like so.

 "key 2"&2,
 "key 3"&"another value",
 "key 4"&"yet another value"#


Comments can be prefixed with a semicolon and end at a newline.

; This a comment