私は現時点ではガイルスキームを学んでいる、と私は突然、次のような構成に走った文書で:"ベア"仮パラメータでラムダ定義を使用する場合
((lambda args (display args)) 42)
=> (42)
これは、ループのために私を投げました。私が想定していたこの時点までの仮パラメータは常にリストで囲まれた:
((lambda (args) (display args)) 42)
=> 42
このバリアントを使用するとき、私は疑問に思う、とどのようにこれは、可変個の引数のためのドット表記とは異なります。 - おそらく、より複雑な例について -
((lambda args (display args)) 1 2 3) => (1 2 3)
((lambda (. args) (display args)) 1 2 3) => (1 2 3)
違いがあり、私が知っておく必要があり、他の上の1つを好むために何らかの理由があること:具体的には、2つの以下のバリアントの違いは何ですか?
(lambda (args) (display args))
そして、このバージョンは、(おそらく受け取る:
ボーナスとして、 'list'の定義は、 '(define list(lambda xx))'です。 – erjiang