Lisp Scheme Part17
..
308:294
07/05/18 18:40:13
言葉がわかりづらい…
束縛→場所をユニークに表すもの
束縛する→識別子を場所またはマクロ変換子に対応づける
参照→場所から値を取り出す事
という解釈で良いんでしょうかね
束縛するはともかく他の2つは直感的な理解と違う解釈な気がしますけど
内部定義のduplicate bindingについてはR5RSでは言及されてないようですけど
内部定義のdefineは完全に等価なletrec変換できるって書いてあるので
暗黙的にduplicate bindingは禁止なんでしょうね
でも処理系によって許すものと許さないものがあるようです
syntax-caseで使用する識別子'_'はマクロ名を表すって説明してるサイトもありますけど
必ずしもそうじゃないんですね
パターンリストの先頭の識別子はパターン変数にならず、
マクロ名と見なされるってだけなので
(define-syntax foo (syntax-rules () ((bar _) (begin (display _) (newline)))))
見たいに書くとパターン変数として使えるんですね
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5389日前に更新/220 KB
担当:undef