scheme

    1

    2答えて

    file-system-treeの機能を https://www.gnu.org/software/guile/manual/html_node/File-Tree-Walk.html#File-Tree-Walkから利用したいと思います。リンクからのremove-statとの組み合わせで、それは木のようなリスト構造をもたらす。 test/ ├── dir1 ├── dir2 │   ├──

    0

    1答えて

    私はリストの深さを教えてくれる手続きをしようとしています。 これは私がこれまで持っているものである:これは、うまく動作します (define (depth lst) (let recurse ((lst lst) (n 1)) (cond ((null? lst) '()) ((not (pair? (car lst))) (cons n (recu

    0

    4答えて

    関数やメソッドを使って、変数に値を代入する方法はありますか?私はSchemeインタプリタを書いています。できれば、プロセスは大幅に簡素化されます。私はあなたが操作を行った結果され、ここで、クラス変数を使用することができます >>> operator.assign(a, 5) >>> print(a) 5

    1

    1答えて

    私はスキームや一般的なLispのに新たなんだ、と学習時に私が結合するローカル・プロシージャで使用される不可解な構文つまずいてきました:それはあることを把握するために私にしばらく時間がかかった (define mock (lambda (s) ;; this is what I don't understand (let splice ([l '()] [m (ca

    1

    5答えて

    私はスキームやcar、cdrなどのアイデアに新しいがあります。リストの最後の要素を返すこの関数がありますが、今は空のリストを返します。 (define (last mylist) (if (list? mylist) (if (null? mylist) (if (null? (cdr mylist)) '()

    0

    1答えて

    今日までにSchemeを見たことはありませんでしたが、GIMP用の簡単なスクリプトを書く必要があります。基本的に私は0から255までの3つのランダム要素を持つリストが必要です。次にこのリストをgimpの前景色を設定する関数に与えます。 ((random 255) 255 255) :の出力が得られ、 (let* ((x '((random 255) 255 255))) x) およびそれら

    -1

    1答えて

    2つの引数、すなわち系列の開始値と終了値をとるforAll手続きを書こうとしています。結果として得られるクロージャーには、初期値だけでなく、系列のすべての要素に適用する操作という2つの引数も必要です。 これは私が持っているもので、何かが欠けているように見えますが、私はクロージャの背後にあるコンセプトを理解していません。 (define (forAll n m) (if (>= n m)

    2

    1答えて

    私はマクロを使用してスキームにおけるこのような何かを実装しようとしているこの (define-struct example (a b)) (define var (make-example 1 2)) (example? var) (example-a var) のようなあなたの構造体の型を作成し、使用する機会を持っているが、私は組み合わせた名前を持つ手続きの作成に問題があります(

    -1

    1答えて

    クロージャを返すプロシージャを作成しようとしています。自分のシリーズに何らかの手続きを適用できるようにしたい。 これは私がこれまで持っていたもので、私のために働いていません。私はこれらの操作を行うことができるようにしたい (define (forAll n m) (lambda (op start) (op (op n start) (+ n 1) m))) : (def

    0

    2答えて

    Schemeに、xという要素の位置を既存のリストの位置に追加するプロシージャを実装しようとしています。これは私が思いついたものです: (define empty-list '()) (define (add i x L) (cond ((null? L) (set! L (list x))) ((= i 0)(set! L (cons x L))) (else