3

SML を使用して完全なリストを印刷する方法はありますか?

通常、SML で要素が多すぎると、最初のいくつかの要素が "," で区切られて出力され、残りのリストが省略さ...れますが、完全なリストが表示されます。それを行う方法はありますか?

val a =[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,18,19,20]

次に、REPLaに書き込むと、次のようなものが返されます:

a=[1,2,3,4,5,...]
4

3 に答える 3

6

SML/NJ を使用していると仮定します。

カスタマイズしたくないのは、Control.Printの参照値です。この場合、値をprintLengthより大きな値に変更したくありません。たとえば、

Control.Print.printLength := 100;

一般に、print*変更したくない参照です。stringDepthただし、文字列の場合、何らかの理由でと呼ぶことにしました。


MosML を使用していると仮定します。

Moscow ML Language Overviewから、Meta ユニットがこれら 2 つの機能を公開することが記述されています (「対話型システムを制御する」ため)。

val printDepth : int ref  (* limit printed data depth *)
val printLength : int ref (* limit printed list and vector length *)
于 2013-01-19T09:13:15.343 に答える
4

Poly/ML を使用していると仮定します。この関数PolyML.print_depthは、任意の構造 (リストを含む) で印刷がどの程度深くなるべきかを示します。それをより大きなものに変更します。

PolyML.print_depth 500
于 2013-01-19T09:18:32.823 に答える