This is my first time that I used ubuntu and SML/NJ. And this question occurred to me when i used the expression CM.make():
Standard ML of New Jersey v110.76 [built: Tue Oct 22 14:04:11 2013]
- CM.make() ;
[autoloading]
[library $smlnj/cm/cm.cm is stable]
[library $smlnj/internal/cm-sig-lib.cm is stable]
[library $/pgraph.cm is stable]
[library $smlnj/internal/srcpath-lib.cm is stable]
[library $SMLNJ-BASIS/basis.cm is stable]
[autoloading done]
stdIn:1.2-1.11 Error: operator and operand don't agree [tycon mismatch]
operator domain: string
operand: unit
in expression:
CM.make ()
I don't know why and where I'm wrong.
Could anybody help me?
What the above error says is that
CM.makeis a function that accepts a string argument ("operator domain: string"), but you gave it a unit()argument ("operand: unit").CM.makeexpects a path to a .cm file where you list your source files:Save the above in a file called
sources.cmand then load it usingCM.make "sources.cm". Don't forget to list your actual source files, notfile-1.smlandfile-2.sml.There are other things that you can do with .cm files, which are covered in the CM manual, but the above should be enough to get you started.