CSE-490 Logic in Computer Science - Resources

[ Home | Schedule | Assignments | Software | Resources | Students ] gla@postech Sungwoo Park


Standard ML/NJ Guide

  • SML/NJ FAQ Answers common questions on the SML language and the SML/NJ system.
    1. To avoid abbreviations # in the output in SML/NJ 110.58, change the following variable:
           Control.Print.printDepth (for data structures)
           Control.Print.printLength (for lists)
           Control.Print.stringDepth (for strings)
      For example:
           - Control.Print.printDepth := 1000;
           val it = () : unit
    2. To turn off garbage collection messages, change the following variable:
           SMLofNJ.Internals.GC.messages false;
    3. To turn on the lazy mode, change the following variable;
           Control.lazysml := true;
    4. There are a few changes in SML/NJ 110.58 from SML/NJ '97 specification:
      SML97: Vector.appi : ((int * 'a) -> unit) -> ('a vector * int * int option) -> unit
      SMLNJ: Vector.appi : ((int * 'a) -> unit) -> 'a vector -> unit
      SML97: Vector.mapi : ((int * 'a) -> 'b) -> ('a vector * int * int option) -> 'b vector
      SMLNJ: Vector.mapi : ((int * 'a) -> 'b) -> 'a vector -> 'b vector
      SML97: TextIO.inputLine : instream -> string
      SMLNJ: TextIO.inputLine : instream -> string option
      SML97: Timer.checkCPUTimer : cpu_timer -> {usr : Time.time, sys : Time.time, gc : Time.time}
      SMLNJ: Timer.checkCPUTimer : cpu_timer -> {usr : Time.time, sys : Time.time} * {usr : Time.time, sys : Time.time} (* nongc * gc *)
      SML97: Array.appi : ((int * 'a) -> unit) -> ('a array * int * int option) -> unit
      SMLNJ: Array.appi : ((int * 'a) -> unit) -> 'a array -> unit
  • Using the SML/NJ System Read to learn how to run/quit the SML interpreter and load files.
  • SML/NJ Basis Library Use these library functions -- never rewrite them!
  • SML/NJ Library Manual Always check this page to see if the library provides an implementation of any data structure you need.
  • SML/NJ error messages Check this page if you cannot understand any SML/NJ error message.
  • SML/NJ User's Guile A comprehensive list of links to various resources.
  • Comp.Lang.ML FAQ Read if you are interested in how many different implementations of ML are available ;-)

Latex links

There are hundreds of webpages about Latex on the internet. The best way to learn Latex is actually by looking at a few well-written Tex source files and their results. I do not particulary recommend the following webpages, but I visit them frequently to quickly find commands in Latex.

[ Home | Schedule | Assignments | Software | Resources | Students ] gla@postech Sungwoo Park