Q1> :(macro incr :Y)=parse Y ":=" Y "+1"
Q2> :X=(NEW)
Q3> X:=10
Q4> X
10
Q5> incr X
Q6> X
12
Q7> incr X
Q8> X
14
---

#0  PlusOp::doit (this=0x957e0, x=0x907e4, y=0x906b8) at ../mi/gfunc.C:915
#1  0x4e43a in BinOp::infix (this=0x957e0, x=0x907e4, y=0x906b8)
    at ../mi/gfunc.C:755
#2  0x4e834 in BinOp::apply (this=0x957e0, args=@0x7fffc344)
    at ../mi/gfunc.C:845
#3  0x57b68 in DependentAssignable::update (this=0xeb300)
    at ../mi/gassign.C:214
#4  0x4e410 in BinOp::infix (this=0x957e0, x=0xd86c0, y=0x906b8)
    at ../mi/gfunc.C:752
#5  0x4e834 in BinOp::apply (this=0x957e0, args=@0x7fffc45c)
    at ../mi/gfunc.C:845
#6  0x57b68 in DependentAssignable::update (this=0xeb340)
    at ../mi/gassign.C:214
#7  0x4e410 in BinOp::infix (this=0x957e0, x=0xd8700, y=0x906b8)
    at ../mi/gfunc.C:752
