I already found a bug with function calls, I have pushed a small update to fix that, please download the new version from the updated link.
Here is the monster expression which was used to find the bug:
> cat example_scripts/expression.au3
MsgBox($MB_INFO, "Math!", -(($foo + 2) / 3) * 4)[666].fortyTwo)
> ./eci example_scripts/expression.au3
{
"op": "Access",
"args": [
{
"op": "Access",
"args": [
{
"op": "Call",
"args": [
{
"ident": "MsgBox"
},
[
{
"op": "No Operation",
"args": [
{
"ident": "$MB_INFO"
}
]
},
[
{
"op": "No Operation",
"args": [
"\"Math!\""
]
},
[
{
"op": "Multiply",
"args": [
{
"op": "Invert",
"args": [
{
"op": "Divide",
"args": [
{
"op": "Add",
"args": [
{
"ident": "$foo"
},
2.0
]
},
3.0
]
}
]
},
4.0
]
},
null
]
]
]
]
},
666.0
]
},
{
"ident": "fortyTwo"
}
]
}