2017-07-21 2 views
0

Haskellのghciは、Show typeclassを実装するタイプに属する値をうまく印刷できます。 utopが自動的にユーザ定義型の値をうまく印刷できるようにするOCamlには同等のものがありますか?あなたのタイプのためにあなたのモジュールで...utopでうまく値を表示

答えて

2

x |> M.to_stringを入力して、すべてのラインが非常に面倒であることM.tは、関数を定義する:

val pp : Format.formatter -> t -> unit 

あなたはその後、使用してocamlまたはutopにタイプのプリンタをインストールすることができます。

# #install_printer M.pp 

マニュアルのtoplevel directiveセクションを参照してください。

+0

これは私にとってはうまくいくようですが、この関数でこの 'Format.formatter'値を使用するにはどうすればいいですか?私が素朴に書きました: 'let pp _ r = to_string r |> print_string'、' = 'の後ではなく、型シグネチャの前に出力されました。 Formatモジュールのドキュメントは私にはあまり役に立たない... – Sventimir

+0

私はそれを自分で見つけました。予想通りの 'Format'モジュールに' val pp_print_text:formatter-> string-> unit'関数があります。どうもありがとう! – Sventimir

+0

あなたの最初の試みについてただ1つのコメント。フォーマットシステムの抽象化に取り掛かる必要があることはできません。それは、あなた自身がかなりの印刷機能で出力を印刷できないだけです。 –

関連する問題