Gael> Hi, I'm new to Poly/ML.  I'd like to start using it, but I still
Gael> have to work with SML/NJ.

Gael> I use the well-known sml-mode-4.0.

5.0 beta is available:

http://www.iro.umontreal.ca/~monnier/elisp

Gael> What should I use also to be able to work both with SML/NJ and
Gael> Poly/ML?

I think the only place where it matters is when you start a new ML
subprocess.  There can be only one default, but you're always given the
chance to choose a different (non-default) program.  It would be easy to
define 2 keyboard macros with distinct keybindings so even that minor
inconvenience would go away.

One trick I found useful with PolyML:

    structure Fs = OS.FileSys
    structure P = OS.Process
    structure T = TextIO

    fun build_dir d =
        let val cwd = Fs.getDir ()
            fun print s = T.output (T.stdOut, s)
        in
            Fs.chDir d
          ; app print ["\n", "Entering directory `", cwd, "/", d, "'\n"]
          ; use "load-all" handle _ => P.exit P.failure
          ; app print ["\n", "Leaving directory `", cwd, "/", d, "'\n"]
          ; Fs.chDir cwd
        end

the "Entering directory" and "Leaving directory" will let next-error
know where the faulty file is and stop it from asking stupid questions :-P

-- 
Ian Zimmerman
gpg public key: 1024D/C6FF61AD
fingerprint: 66DC D68F 5C1B 4D71 2EE5  BD03 8A00 786C C6FF 61AD
http://www.gravatar.com/avatar/c66875cda51109f76c6312f4d4743d1e.png
Rule 420: All persons more than eight miles high to leave the court.
_______________________________________________
polyml mailing list
[email protected]
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml

Reply via email to