My first Lisp like programming language
- clone the repo
- cd into root directory of repo
- run
pip install .
- now you have nowata installed and you can run files with
nowata your-file.nv
A nowata program consits of expressions
(SYMBOL ARGS...)
AN expression is enclosed in braces, where SYMBOL
is either a keyword or function name and ARGS...
are any number of expressions or Atoms
(print (str Hello World!))
(if TEST ON_TRUE ON_FALSE)
(if (== 1 1) (print (str one is equal to one)) (oops))
(var NAME VALUE)
(var my-number 128)
(print WHAT)
(print (str Hello))
(input)
- returns string value
(var user-name (input))
(func NAME EXPRESSIONS...)
(func print-hello (print (str Hello There!)))
- (== A B) - returns whether A equals B
- (!= A B) - retrurns whether A NOT equals B
- (> A B) - returns whether A is greater then B
- (< A B) - returns whether A is less then B
- (+ A B) - returns A plus B
- (- A B) - returns A minus B
- (* A B) - returns A multiplied by B
- (/ A B) - returns A divided by B