</if>
</defun>
- <defun fname="temp">
- <args-unevalled>
- <fixed vname="x"/>
- <optional vname="y"/>
- <rest vname="rest"/>
- </args-unevalled>
- <eval><varref vname="x"/></eval>
- </defun>
-
<defun fname="looptest">
<args><fixed vname="l"/></args>
- <foreach vname="term"><varref vname="l"/>
- <eval><varref vname="term"/></eval>
- </foreach>
+ <loop><loop>
+ <foreach vname="term"><varref vname="l"/>
+ <eval><varref vname="term"/></eval>
+ </foreach>
+ </loop></loop>
+ <symbol>looptest-finished</symbol>
</defun>
- <funcall fname="looptest">
- <list>
- <set vname="i"><integer>0</integer></set>
- <return><symbol>returned</symbol></return>
- <add vname="i"><integer>1</integer></add>
- <varref vname="i"/>
- </list>
- </funcall>
+ <defmacro fname="temp">
+ <args><fixed vname="x"/></args>
+ <if>
+ <lt><eval><varref vname="x"/></eval><integer>10</integer></lt>
+ <varref vname="x"/>
+ </if>
+ </defmacro>
+
<set vname="x"><integer>10</integer></set>
<set vname="str"><string>ABC</string></set>
<append>
+ <catch><symbol>tag</symbol>
+ <funcall fname="looptest">
+ <list>
+ <set vname="i"><integer>0</integer></set>
+ <throw><symbol>tag</symbol><symbol>returned</symbol></throw>
+ <add vname="i"><integer>1</integer></add>
+ <varref vname="i"/>
+ </list>
+ </funcall>
+ </catch>
<funcall fname="factorial"><varref vname="x"/></funcall>
<ins vname="str"><integer>1</integer><string>123</string></ins>
<del vname="str"><integer>2</integer><integer>4</integer></del>
</cond>
<foreach vname="a">
<list><integer>10</integer><integer>11</integer></list>
- <add vname="x"><varref vname="a"/></add>
+ <funcall fname="add" vname="x"><varref vname="a"/></funcall>
</foreach>
<varref vname="x"/>
<eval><varref vname="x"/></eval>
<quote><add><varref vname="x"/><integer>1</integer></add></quote>
</eval>
</eval>
+ <concat><integer>?a</integer><integer>?b</integer></concat>
+ <quote><add><varref vname="x"/><integer>1</integer></add></quote>
+ <integer>100</integer>
+ <temp><add vname="y"><integer>5</integer></add></temp>
</append>
</expr>