2016-04-10 7 views
0

私はこのサイトの多くのトピックを探しましたが、誰も私の問題を解決しませんでした。ご覧のとおり、私はSchemeの初心者です。私は関数型プログラミングに慣れていないので、かなり奇妙に思えます。 私が尋ねたいのは、私はグローバルに定義されたリストを持っているということです。私はこのリストをある関数で更新し、別の場所に表示したいと思う。私は、この特定のコードを使用すると、それは私に'(#<void>) を返しスキーム:別の関数でグローバルに定義されたリストを更新する

set! db (append db (list entry)) 

あなたの助けをありがとうございました。

+0

ようこそスタックオーバーフロー!速い回答を得るためには、質問をする方法を熟知してください。特に、デバッグのヘルプ(「なぜこのコードは動作しないのですか?)」には、目的の動作、特定の問題またはエラー、および**その質問自体に再現するのに必要な最短コード**が含まれていなければなりません。参照:[最小、完全、および検証可能な例の作成方法](http://stackoverflow.com/help/mcve) – Renzo

+0

セット!空を返すはずです。あなたは今dbが '(#)であることを意味しますか?もしそうなら、それは腸が無効であることを意味する。 – Majora320

答えて

0

consを使用すると、一度に1つの要素を追加できます。

(define db (list)) 
(set! db (cons 1 db)) 
(set! db (cons 2 db)) 
(set! db (cons 3 db)) 
db 
関連する問題