Hi Jeanne - I moved your post as I think it's a topic that deserves its own
thread.
You're already ahead of me in your use of a
testing framework for SML. I just wrote ad hoc boolean functions to test specific functions e.g. to test if rev_string() actually reverses a given
string:
I haven't used ML since the course, but it seems sensible to use a unit testing library - even a simple one - if one is available.
The printing thing is a new one on me - I just put my test results in a list then inspected the list. I know I/O is problematic in pure functional languages because it has side effects - each time you call the read/print operation you leave the system in a different state - but I though most languages had a way around this by encapsulating the side effects with monads or something. Maybe somebody else knows more about how to manage this kind of thing in SML?
As for learning Emacs, respect! I need to find time to try it again, as it seems all the Cool Kids are using Emacs these days...