Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] View of /sml/trunk/src/cm/main/cm.sig
ViewVC logotype

View of /sml/trunk/src/cm/main/cm.sig

Parent Directory Parent Directory | Revision Log Revision Log


Revision 569 - (download) (as text) (annotate)
Tue Mar 7 04:01:07 2000 UTC (19 years, 6 months ago) by blume
File size: 1564 byte(s)
- size info in BOOTLIST
     * no fixed upper limits for number of bootfiles or length of
       bootfile names in runtime
     * falling back to old behavior if no BOOTLIST size info found
- allocation size heuristics in .run-sml
     * tries to read cache size from /proc/cpuinfo (this is important for
        small-cache Celeron systems!)
- install.sh robustified
- CM manual updates
- paranoid mode
     * no more CMB.deliver() (i.e., all done by CMB.make())
     * can re-use existing sml.boot.* files
     * init.cmi now treated as library
     * library stamps for consistency checks
- sml.boot.<arch>-<os>/PIDMAP file
     * This file is read by the CM startup code.  This is used to minimize
       the amount of dynamic state that needs to be stowed away for the
       purpose of sharing between interactive system and user code.
- CM.Anchor.anchor instead of CM.Anchor.{set,cancel}
     * Upon request by Elsa.  Anchors now controlled by get-set-pair
       like most other CM state variables.
- Compiler.CMSA eliminated
     * No longer supported by CM anyway.
- fixed bugs in pickler that kept biting Stefan
     * past refs to past refs (was caused by the possibility that
       ad-hoc sharing is more discriminating than hash-cons sharing)
     * integer overflow on LargeInt.minInt
- ml-{lex,yacc} build scripts now use new mechanism
  for building standalone programs
- fixed several gcc -Wall warnings that were caused by missing header
  files, missing initializations, etc., in runtime (not all warnings
  eliminated, though)
(*
 * This is the signature for a "full" structure CM.  This structure gets
 * constructed in cm-boot.sml and is made available at top-level by
 * (auto-)loading the library "full-cm.cm".
 * (After system startup only a "minimal" structure CM is visible.)
 *
 *   Copyright (c) 1999 by Lucent Bell Laboratories
 *
 * author: Matthias Blume (blume@cs.princeton.edu)
 *)
signature CM = sig

    include MINIMAL_CM

    type 'a controller = { get : unit -> 'a, set : 'a -> unit }

    structure Anchor : sig
	val anchor : string -> string option controller
	val reset : unit -> unit
    end

    structure Control : sig
	val keep_going : bool controller
	val verbose : bool controller
	val parse_caching : int controller
	val warn_obsolete : bool controller
	val debug : bool controller
	val conserve_memory : bool controller
    end

    structure Library : sig
	type lib
	val known : unit -> lib list
	val descr : lib -> string
	val osstring : lib -> string
	val dismiss : lib -> unit
    end

    structure State : sig
	val synchronize : unit -> unit
	val reset : unit -> unit
	val pending : unit -> string list
    end

    structure Server : sig
	type server
	val start : { cmd : string * string list,
		      name : string,
		      pathtrans : (string -> string) option,
		      pref : int } -> server option
	val stop : server -> unit
	val kill : server -> unit
	val name : server -> string
    end

    val symval : string -> int option controller
    val load_plugin : string -> bool

    val mk_standalone : bool option -> string -> string list option
end


root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0