レストパラメータなしのコード
Gauche
1(define avg 2 (lambda (ls) 3 (let loop ((sum 0) (ls1 ls)) 4 (if (null? ls1) 5 (/ sum (length ls)) 6 (loop (+ sum (car ls1)) (cdr ls1)))))) 7(avg (list 1 2 3 4 5))
---> 3
レストパラメータありのコード
Gauche
1(define avg 2 (lambda ( . ls) 3 (let loop ((sum 0) (ls1 ls)) 4 (if (null? ls1) 5 (/ sum (length ls)) 6 (loop (+ sum (car ls1)) (cdr ls1)))))) 7(avg 1 2 3 4 5)
--->
*** READ-ERROR: Read error at "(standard input)":line 114: bad dot syntax
以下 ls が定義されていない等のエラー
質問
こちらのチュートリアル(http://www.shido.info/lisp/scheme4.html)に従って勉強しているのですが、掲載の方法ではレストパラメータが使えないように思えます。
お手数をおかけしますが、Gaucheでレストパラメータを使用する方法をお教えいただければ幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/27 06:04
2018/10/27 06:10
2018/10/27 07:47