私はSchemeを初めて使用し、コンピュータプログラムの構造と解釈を読んで言語に慣れようとしています。配列について少し混乱しています。
まず、begin
変更可能な構造の操作を容易にするために必要な、シーケンスを許可するためにキーワードが導入されていることを理解しています。私が理解していないのは、次のようにシーケンスを使用することがあることです (SCIP の 268 ページの例が動機です)。
(define (stuff-0)
(+ 1 2)
(+ 1 3)
'ok)
を使用して同じことを実装できますbegin
。
(define (stuff-1)
(begin
(+ 1 2)
(+ 1 3)
'ok))
これら2つの間に意味的な違いはありますか、それとも最初のものは2番目の構文糖衣にすぎませんか?
第二に、実際的な重要性は別として、理論的にそのbegin
構成要素は必要ですか? 必要なシーケンスごとに、シーケンスを実装するプロシージャのカスケードを記述できると思います。もちろん実用的ではありませんが、私はbegin
構造のない言語の表現力に興味があります。