Увеличение глубины печати в 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

Ответы

Ответ 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 как таковой.