(* COPYRIGHT (c) 1996 Bell Laboratories *) (* version.sml *) structure Version : sig val version : { system : string, (* the system title *) version_id : int list, (* the version number *) date : string (* date of creation *) } val banner : string end = struct val version = { system = "Standard ML of New Jersey (FLINT v1.3)", version_id = [110,3], date = "Rev. 03/13/98" } fun f ([], l) = l | f ([x : int], l) = (Int.toString x)::l | f (x::r, l) = (Int.toString x) :: "." :: f(r, l) val banner = concat ( #system version :: ", Ver " :: f (#version_id version, [", ", #date version])) end