Lisp Scheme Part17
..
464:デフォルトの名無しさん
07/05/27 23:49:36
syntax-caseで書くならこんなカンジか?
(define-syntax define&
(lambda(x)
(syntax-case x ()
((k sym obj)
(with-syntax
((s
(datum->syntax-object (syntax k)
(eval (syntax-object->datum (syntax sym))
(interaction-environment)))))
(syntax (define s obj)))))))
petite chez schemeで試してみたが、こういうテストケースでは動くことを確認した。
(define& (string->symbol (string-append "a" "b")) 1)
ab ;-> 1
結局のところ、今はschemeに足りないところがあるのはそのとおりだと思う。
でもな、完成されたものを使うだけってつまらないと思うわけ。
マクロに関しても色んな提案があってそれぞれ細かい部分で利点も問題点もかかえてて、
それがどう収束していくかってなかなか面白いことじゃないか。
ま、仕事で使うならそうもいってられんのだろうが。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5391日前に更新/220 KB
担当:undef