Features
Qu has a full set of features you would expect from a programming language.
It even has some unique features you probably wont find in any other language
such as validators, universal self, thread specific symbols, etc.
dynamic and fast
strong semi-dynamic typing (optional static typing)
fully object-oriented
clean syntax
a wide range of builtin classes
builtin module management
native threads
builtin complex number
builtin big integer and big decimal
builtin rational number
math library with arbitrary precision
label loops, break, continue, redo
loop, while, for, atomic, do
fast exceptions
try, catch, else, finally
nested function
lexical closure
function/method tags
accummulator
generator
coroutine
type validator
run once function/method
full and safe eval
thread buffer printing
auto self
private, public and static attributes
read/write & read-only attributes
class property and methods
method/function tags
dynamic attribute access
single inheritance with mixins
multiple constructors
assignable methods/functions
super class attribute access
delegation
finalizers
weak references
multiple assignment
variable and default arguments
argument flattening
function and method currying
list builders (list comprehension)
dynamic library access from Qu programs
call from/to Qu function to/from C functions
uniform access principle (UAP)
assignable methods and functions
indent and non-indent style
mark & sweep garbage collector