tagged release 0.7.1
[parrot.git] / languages / tcl / runtime / builtin / apply.pir
blob0aab614ed57d1af913c293909233f0d149b0c468
1 .HLL 'Tcl', ''
2 .namespace []
4 .sub '&apply'
5   .param pmc argv :slurpy
7   .local int argc
8   argc = elements argv
9   if argc == 0 goto no_args
11   .local pmc toList, lambda
12   toList = get_root_global ['_tcl'], 'toList'
13   lambda = argv[0]
14   lambda = toList(lambda)
16   $I0 = elements lambda
17   if $I0 < 2 goto bad_lambda
18   if $I0 > 3 goto bad_lambda
20   tcl_return ''
22 bad_lambda:
23   $S0 = argv[0]
24   $S0 = "can't interpret \"" . $S0
25   $S0 = $S0 . "\" as a lambda expression"
26   die $S0
28 no_args:
29   die 'wrong # args: should be "apply lambdaExpr ?arg1 arg2 ...?"'
30 .end
32 # Local Variables:
33 #   mode: pir
34 #   fill-column: 100
35 # End:
36 # vim: expandtab shiftwidth=4 ft=pir: