(begin expr1 expr2 ...)
はすべての式を評価し、評価された最後の式を返します。Schemeでは、 `(begin)`の返り値は何ですか?
私はChez Schemeではbegin
のような式を使わずに(begin)
を使用することができます。私は私の研究の一環としてChez Schemeを使用しています。私がコンソールに書き込むときには、void
のように構文エラーを出さず、何も表示しません。
私の質問は、何が返されますか?
(void)
を実行して取得できる空白オブジェクトだと思いました。 しかし、私はそれをテストしたとき、私はそれが実現していないことに気付きました。
私はChez Schemeをコンパイラコースの一部として勉強しています。私は特別な単語begin
を処理できるコンパイラの一部を実装する必要があります。だから私はこれがなぜ可能で、この関数が何を返すのかを知る必要があります。
EDIT:
私はこのトピックに関するthis linkを追加しています。 私はその答えを完全に理解することができませんでした。加えて、彼は返品の種類について言及していません。
コンパイラの一部を実装する場合、言語フォームの意味の定義は、既存の動作からではなく、仕様からのものでなければなりません。右? –