1(* ========================================================================= *)
2(* MOSCOW ML SPECIFIC FUNCTIONS                                              *)
3(* Copyright (c) 2002-2004 Joe Hurd.                                         *)
4(* ========================================================================= *)
5
6structure mlibPortable :> mlibPortable =
7struct
8
9(* ------------------------------------------------------------------------- *)
10(* The ML implementation.                                                    *)
11(* ------------------------------------------------------------------------- *)
12
13val ml = Systeml.ML_SYSNAME;
14
15(* ------------------------------------------------------------------------- *)
16(* Ensuring that interruptions (SIGINTs) are actually seen by the            *)
17(* linked executable as Interrupt exceptions.                                *)
18(* ------------------------------------------------------------------------- *)
19
20val _ = Portable.catch_SIGINT();
21
22(* ------------------------------------------------------------------------- *)
23(* Pointer equality using the run-time system.                               *)
24(* ------------------------------------------------------------------------- *)
25
26fun pointer_eq x y = Portable.pointer_eq(x,y)
27
28(* ------------------------------------------------------------------------- *)
29(* Timing function applications a la Mosml.time.                             *)
30(* ------------------------------------------------------------------------- *)
31
32val time = Portable.time;
33
34(* ------------------------------------------------------------------------- *)
35(* MD5 cryptographic hashing.                                                *)
36(* ------------------------------------------------------------------------- *)
37
38val md5 = Portable.md5sum;
39
40end
41