The currently supported built-in features are integer arithmetics, floating point number arithmetics, and strings of characters. Vector arrays will be supported in the near future.
The Prolog list syntax is available. List constructor atoms have three arguments and the name '.'.
X=[A,B|Rest],Rest=[]
is an abbreviated form of '.'(A,Tmp,Rest),'.'(B,Rest,Tmp),'[]'(Rest).
Integer arithmetics and floating point number arithmetics are available. Note that some features, for example bit-shift operator or cosine function, are not yet implemented.
Note that atoms are treated as numbers only if they are unary (i.e., one-argument) atoms.
X = -2, p(345) X = 2.0, p(-3.14e-10)
Currently, the following operations are available:
int(+Float,-Int) - cast float(+Int,-Float) - cast '+'(+Int,+Int,-Int) - integer operation, as well as: - * / mod '+.'(+Float,+Float,-Float) - floating operation, as well as: -. *. /.
Strings (such as "abc") are unary atom names and can be distinguished from symbols (such as 'abc' or just abc).
Note that string literals are treated as strings only if they are unary; otherwise, they are treated as symbols.
X = "abc", p("abc\\de\"\nf\ g") X = "abc", p([[abc\de" fg]])
The former is in C-like format and the latter is in multiline-quoted format.
Not yet implemented.