eccb0c4dc9
Added new special operators like &= and <<=.
...
Also made a litle change to scanner function moveOn(): now it moves on
the last char passed and only if there are more than one chars.
2024-12-29 19:26:02 +01:00
d91e7eb979
The list operator '<<' (append) and '>>' (prepend) have been replaced
...
with the new operators '<+' and '+>' respectively.
'<<' and '>>' are now used only for left and right binary shit
respectively. Further, their priority has been increased moving them to
a higher priority than that of the assignment operator.
2024-12-28 09:17:27 +01:00
cca3b76baa
solved a number of problems highlighted by the syntax analyzer
2024-12-27 07:46:11 +01:00
de87050188
scanner.go: removed SymTilde from DefaultTranslatios() -> It is not an alias for the SymNot symbol any more
2024-12-19 15:30:29 +01:00
6ee21e10af
New, more flexible, parser context datatype that includes and extends
...
the previous flags allowForest and allowVarRef.
Added binary operator (work in progress).
Better implementation of +=,-=,*=, and /= (new) operators.
2024-12-19 14:48:27 +01:00
463e3634ba
scanner.go: New function UnreadToken().
...
Currently it only supports one staging level.
2024-07-23 15:32:25 +02:00
234759158c
scanner: disabled prefix operator '()'
2024-07-13 18:10:04 +02:00
867806155e
scanner.go: replaced self receiver
2024-07-08 07:30:58 +02:00
fd8e32e12b
new operator "?!" (alternate value)
2024-07-06 05:54:53 +02:00
0bb4c96481
scanner.go: Strings can be enclosed between two single-quotes too
2024-06-10 18:52:13 +02:00
03d4c192c2
new syntax to get items from collection: collection[index]. Supported collections are string, list and dict
2024-05-24 22:51:01 +02:00
e7e9330b71
scanner: Fixed decimal number parser; it didn't save parenthesis around period part
2024-05-14 05:41:10 +02:00
4151f3f5e2
literals of rational number, e.g. 1.2(3), are now supported and are evaluated as fractions
2024-05-14 04:55:16 +02:00
a2c0a24494
added symbol '..' and '...'; improved some error reports in parser.go
2024-05-04 18:47:00 +02:00
10eec286fa
new operator '111123' that returns the content of the current context or the context of an iterator
2024-04-27 06:12:30 +02:00
750c660331
first working implementation of iterators and some fixes to the parser around lists analysis
2024-04-26 04:45:42 +02:00
a628bfac39
New symbol '^' (caret). The scanner now returns an error token if can't recognise a symbol.
2024-04-21 07:10:19 +02:00
7198749063
new operator dot '.' used to select an item or character from a list or a string respectively
2024-04-19 09:05:26 +02:00
54bc759f70
expressions now support intger value in bin (0b), oct (0o), and hex (0x) form
2024-04-17 14:15:50 +02:00
353d495c50
two new operators added: '<<' and '>>
2024-04-16 03:54:50 +02:00
d3f388f7e1
Selector operator, multi-operand, added
2024-04-08 22:16:07 +02:00
7612a59757
Operator '@@' (export-all) added. Experimental include() function also added
2024-04-06 03:06:07 +02:00
d073d11ad3
Variable references belonging to the parent scope added ('@')
2024-04-04 12:54:26 +02:00
fccfd2f971
Operators '??' and '?=' added
2024-04-03 13:15:25 +02:00
072dab4144
Expressions now support function definition
2024-04-02 04:36:03 +02:00
9fa3d9fcb2
Added the tilde '~' operator acting as NOT
2024-03-28 06:25:29 +01:00
594806c999
added operator './' (float division) and test
2024-03-26 09:12:44 +01:00
33841c5861
Added copyrighr note to all sources
2024-03-26 08:45:18 +01:00
522b880ca3
Added all source files
2024-03-26 07:00:53 +01:00