Emacs/geiserをRacket(DrRacketではなく)で使用すると、ブレークポイントを設定してから、コードをステップ実行してブレークポイントで停止できますか?例えば、私はこのコードを持っている:ラケットにブレークポイントを設定しますか?
(define (powerset4 lst)
(if (null? lst)
'(())
(append-map (lambda (x)
(begin
(fprintf (current-output-port) "~s ~s ~s\n" x lst x)
(list x (cons (car lst) x))))
(powerset4 (cdr lst)))))
を、私は値が何であるかが起こっているとものを見るためにbegin
シーケンス内で停止したいです。 printf
のトリックにも依存しないこと、つまり特定のパラメータをトラッキングすることもいいでしょう。再び、私はEmacsにいてGeiserを使っています。実際に、私はこれをもっとうまくやれば、ガイアやチキン(ガイザーの言語)に切り替えることができます。
ブレークポイント、ステッピングなどを設定する機能は、言語ではなくデバッガまたはIDEに通常関連付けられている機能です。 '#lang racket'では標準のデバッガがDrRacketに組み込まれています。 Therは 'debug'モジュール[https://docs.racket-lang.org/debug/index.html?q=debug#%28mod-path._debug%29]であり、不安定なライブラリ[https:// docs。 racket-lang.org/unstable/Debugging.html?q=debug#%28form._%28%28lib._unstable%2Fdebug..rkt%29._debug%29%29]これはラケット言語プログラムの一部として行うことができます。これらは「印刷」よりも管理しやすいかもしれません。 –
@ 147pm DrRacketのグラフィカルデバッガを使用してブレークポイントを取得します。 http://docs.racket-lang.org/drracket/debugger.html – soegaard
DrRacketを特に要求していない質問です。 –