- [type]
- name = int
- comment = Integer algebra
- check = flow: "[+-]?[0-9]+"
- [operators]
- +/- = int->int, change sign
- + = int->int->int, add
- - = int->int->int, substract
- * = int->int->int, multiply
- / = int->int->int, divide
- % = int->int->int, modulo
- = = int->int->int, equality
- > = int->int->int,
greater
- < = int->int->int,
smaller
- >= = int->int->int, greaterEq
- <= = int->int->int, smallerEq
- <> = int->int->int, diferent
- << = int->int->int, shift
left
- >> = int->int->int, shift
right
- & = int->int->int,
binary and
- | = int->int->int, binary
or
- ^ = int->int->int, binary
xor
- && = int->int->int,
logical and
- || = int->int->int, logical
or
- zero = int->int, is zero
|
FEATURES
- the data type is specified with a regular expression (check
item)
- an operator is known by its name (+/-) and its signature
(int->int)
- the implementation of an operator is not described in an algebra
- the list of operator can be infinitly extended
- algebra are dynamically loaded in the compiler (command line)
|