Увеличаване на дълбочината на печат в SML/NJ

Опитвам се да накарам SML/NJ да отпечата резултат на най-високо ниво, без да поставя # знаци навсякъде.

Според някои стари документи (и публикация в тази дискусионна група от 2001 г.), трябва да е възможно да се използва Compiler.Control.Print.printDepth

Въпреки това, на SML/NJ версия 110.7, това просто дава грешка:

- Compiler.Control.Print.printDepth := 100;
stdIn:1.1-30.8 Error: unbound structure: Control in path Compiler.Control.Print.printDepth

person higherDefender    schedule 20.02.2011    source източник


Отговори (1)


Може да не искате да сте по-точни в бъдеще. Можете например да дадете някакъв примерен резултат и връзка към мястото, където сте намерили горното.

Ако разбирам проблема ви правилно, тогава последният ред по-долу е вашият проблем? (кодов фрагмент

- datatype tree = leaf | node of int * tree * tree;
datatype tree = leaf | node of int * tree * tree 

- val t = node (1, node (2, node (3, leaf, leaf), leaf), leaf);
val t = node (1,node (2,node #,leaf),leaf) : tree 

Тогава структурата Control.Print е това, което ти търсиш. Така че просто пуснете частта Compiler и използвайте

Control.Print.printDepth := 100;

Имайте предвид, че това е специфично за SML/NJ, а не за ml-yacc като такъв.

person Jesper.Reenberg    schedule 21.02.2011