2010-09-21 4 views
0

Je donne les résultats suivants:smlnj étendre # en sortie

val it = DATAX ("hello",DATAX ("world",DATAX #,DATAX #),... 

Y at-il un moyen de faire l'interprète smlnj développer « # » afin que je puisse voir ce que les données exactes est? Merci!

Répondre

2

Ok. J'ai trouvé une réponse:

http://www.cs.cmu.edu/~me/212/environment.html

Lorsque SML/NJ imprime une structure de données, il informe que la structure de données uniquement pour une certaine profondeur. Sous cette profondeur, imprime un # à la place. C'est généralement une bonne chose, puisque les structures de données peuvent être très grandes (et même cycliques). Toutefois, la profondeur par défaut à laquelle SML/NJ imprime des structures de données est 5, , ce qui n'est généralement pas suffisant. Vous pouvez régler la profondeur à laquelle il imprime structures de données en entrant, par exemple ,

  • Control.Print.printDepth := 10;

pour régler la profondeur à 10. SML/NJ aussi abrège listes et les chaînes sur certaine longueur. Vous pouvez définir la longueur à laquelle cela se produit en définissant Control.Print.printLength et Control.Print.stringDepth, d'une manière analogue à ce qui précède.

+1

Vous devez accepter votre propre réponse – jamessan