(* Initialise the toplevel environment. -*- tuareg -*-
- * $Id: init.in,v 1.6 2008/02/01 15:25:16 rjones Exp $
+ * $Id: init.in,v 1.9 2010/04/04 19:38:40 rjones Exp $
* - Removes the Pervasives module and any dangerous functions.
* - Loads just the modules we want to give access to, and just
* the functions within those modules that we want to give.
*)
(* Load some libraries. *)
+#load "dynlink.cma";;
#load "nums.cma";;
#load "unix.cma";;
#load "str.cma";;
module StringSet = Set.Make(String)
module StringMap = Map.Make(String)
-(* Create an object, so we get the CamlinternalOO module. *)
-(* XXX Are any of the methods unsafe? *)
+(* Create an object, so we get the CamlinternalOO module ... *)
let _ = object end
-(* Load our custom grammar, which disables "external". *)
+(* ... but prevent public access to CamlinternalOO. *)
+module CamlinternalOO = struct end
#load "camlp4o.cma";;
#load "./pa_noexternal.cmo";;