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