2008-03-11
■ [biwascheme] applyを実装した
てか「まだ無かったのかよ」といわれそうだが(笑).
なんかapplyは難しいというイメージがあったのだが,別にそんなことはなかったぜ. テストケースが動かないのは, (lambda vars (foo) (bar)) みたいな記法に対応してなかったせいだった.
というわけでソース.Callはこういう風に使います(私信).
define_libfunc("apply", 2, null, function(ar){ var proc = ar.shift(), rest_args = ar.pop(), args = ar; args = args.concat(rest_args.to_array()); return new Call(proc, args, function(result){/*特になにもしない*/}); })