22

ホワイトスペースで文字の読み取りがどのように機能するかを理解するのに苦労しています。Hello World プログラムを実行できました。しかし、今はユーザーから 1 文字だけを読み取って、標準出力に出力しようとしています。エラーは発生しません。すべて正常にコンパイルされますが、出力に文字が表示されません。少しデバッグしようとしましたが、空白では非常に難しく、ユーザーから読み取った値が 0 (または null) であるため、何も出力されないと思います。

これが私が文字を読む方法です(正しい方法だと思います)

start          















end

そして、ここで印刷のSSCCE(Hello Worldプロジェクトとほぼ同じであるため、これは機能するはずです.

start           


















end

Whitespace 0.3 と Haskell Compiler バージョン 5.02 を使用しています

4

1 に答える 1

6

文字を取得してヒープに格納し、すぐに取得して出力するコードの例を次に示します。

Command                 Description     Stack   Heap
=======================================================
space space space lf    push 0          0
space lf space          duplicate       0 0
tab lf tab space        get character   0       h[0]=c
tab tab tab             retrieve        c       h[0]=c
tab lf space space      put character           h[0]=c
lf lf lf                exit
于 2013-12-28T21:18:21.460 に答える