適切なライン編集を備えたコンソールUIを備えたCurryプログラミング言語でプログラムを作成する最も実用的な方法は何ですか?
実際、ユーザーの入力の提案として文字列を渡し、ユーザーにコンソールで編集させ、編集したバリアントを受け取って処理し(プロセスの現在の状態に戻す)、ループする必要があります。
私はreadlineのような/haskelineのような編集が好きです。(そして、最新バージョン(0.6.4.0)のBTW haskelineには、まさに私が望むAPIがあります。提案された初期値を持つ行を読んでください- getInputLineWithInitial
:
getInputLine
この関数は、入力領域に事前入力することを除いて、とまったく同じように動作します。入力領域にあるテキストは、2つの文字列を持つ2タプルとして指定されます。タプルの左側の文字列はカーソルの左側に表示される文字列であり、右側の文字列はカーソルの右側に表示される文字列です。
)。
最も実用的な方法でCurryプログラムに必要な機能を取得する方法(つまり、コンソール編集操作のためにCurryで新しいコードを記述したくないのですが、ライブラリ、ラッパー、またはFFIを使用する可能性があります) ?