1cd interface; make test 2make[1]: Entering directory `/home/sestoft/mosml2.0/src/dynlibs/interface' 3mosml smlside.sml 4Moscow ML version 2.00 (June 2000) 5Enter `quit();' to quit. 6[opening file "smlside.sml"] 7> val it = () : unit 8> datatype flag = (flag,{con RTLD_LAZY : flag, con RTLD_NOW : flag}) 9 type symHandle = symHandle 10 type dlHandle = dlHandle 11 con RTLD_LAZY = RTLD_LAZY : flag 12 val ('a1, 'b) app1 = fn : symHandle -> 'a1 -> 'b 13 con RTLD_NOW = RTLD_NOW : flag 14 val ('a1, 'a2, 'b) app2 = fn : symHandle -> 'a1 -> 'a2 -> 'b 15 val ('a1, 'a2, 'a3, 'b) app3 = fn : symHandle -> 'a1 -> 'a2 -> 'a3 -> 'b 16 val ('a1, 'a2, 'a3, 'a4, 'b) app4 = fn : 17 symHandle -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'b 18 val dlclose = fn : dlHandle -> unit 19 val ('a1, 'a2, 'a3, 'a4, 'a5, 'b) app5 = fn : 20 symHandle -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'b 21 val dlsym = fn : dlHandle -> string -> symHandle 22 exn Closed = Closed : exn 23 val dlopen = fn : {flag : flag, global : bool, lib : string} -> dlHandle 24 val 'b var = fn : symHandle -> 'b 25> New type names: =t 26 datatype t = 27 (t,{con Br : int * t * t -> t, con Brs : t list -> t, con Lf : t}) 28 val dlh = <dlHandle> : dlHandle 29 val fu = fn : unit -> unit 30 val fi = fn : int -> int 31 val fc = fn : char -> char 32 val fr = fn : real -> real 33 val fs = fn : string -> string 34 val fb = fn : bool -> bool 35 val fcur = fn : int -> char -> real -> string -> bool -> int 36 val ftup = fn : int * char * real -> int 37 val frec = fn : {age : int, givenname : string, surname : string} -> bool 38 con Br = fn : int * t * t -> t 39 con Brs = fn : t list -> t 40 con Lf = Lf : t 41 val fdat = fn : t -> int 42 val ffun = fn : (int -> real) -> int -> string 43> val frtup = fn : int -> int * bool 44> val frrec = fn : int -> {half : int, odd : bool} 45> val fconcat = fn : string -> string -> string 46> val test1 = true : bool 47> val test2 = true : bool 48> val test3 = true : bool 49> val test4 = true : bool 50> val test5 = true : bool 51> val test6 = true : bool 52> val test7 = true : bool 53> val test8 = true : bool 54> val test9 = true : bool 55> val test10 = true : bool 56 val test11 = true : bool 57> val test12 = true : bool 58> val test13 = true : bool 59> val test14 = true : bool 60make[1]: Leaving directory `/home/sestoft/mosml2.0/src/dynlibs/interface' 61cd intinf; make test 62make[1]: Entering directory `/home/sestoft/mosml2.0/src/dynlibs/intinf' 63mosml testintinf.sml 64Moscow ML version 2.00 (June 2000) 65Enter `quit();' to quit. 66[opening file "testintinf.sml"] 67> val it = () : unit 68[opening file "../../mosmllib/test/auxil.sml"] 69> infix 1 seq 70 val ('a, 'b) seq = fn : 'a * 'b -> 'b 71> val check = fn : bool -> string 72> val check' = fn : (unit -> bool) -> string 73> val range = fn : int * int -> (int -> bool) -> bool 74> val checkrange = fn : int * int -> (int -> bool) -> string 75[closing file "../../mosmllib/test/auxil.sml"] 76> val it = () : unit 77> val test1a = "OK" : string 78 val test1b = "OK" : string 79 val test1c = "OK" : string 80 val test1d = "OK" : string 81 val test2a = "OK" : string 82 val test2b = "OK" : string 83 val test2c = "OK" : string 84 val test2d = "OK" : string 85 val test3a = "OK" : string 86 val test3b = "OK" : string 87 val test3c = "OK" : string 88 val test3d = "OK" : string 89 val test4a = "OK" : string 90 val test4b = "OK" : string 91 val test4c = "OK" : string 92 val test4d = "OK" : string 93 val test5a = "OK" : string 94 val test5b = "OK" : string 95 val test5c = "OK" : string 96 val test5d = "OK" : string 97 val test5e = "OK" : string 98 val test5f = "OK" : string 99 val test6a = ["OK", "OK", "OK", "OK"] : string list 100 val test6b = ["OK", "OK", "OK", "OK"] : string list 101 val test6c = ["OK", "OK", "OK", "OK"] : string list 102 val chkToString = fn : int * string -> string 103 val test12a = ["OK", "OK", "OK", "OK"] : string list 104 val 'a chk = fn : ('a -> int/1 option) -> 'a * int -> string 105 val chkScan = fn : radix -> string * int -> string 106 val test13a = ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK"] : string list 107 val test13b = 108 ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK"] : 109 string list 110 val test14a = ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK"] : string list 111 val test14b = 112 ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK"] : 113 string list 114 val test15a = ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK"] : string list 115 val test15b = 116 ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", 117 "OK", "OK"] : string list 118 val test16a = ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK"] : string list 119 val test16b = 120 ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", 121 "OK"] : string list 122 val test17a = ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK"] : string list 123 val test17b = 124 ["OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK"] : 125 string list 126 val test18 = "OK" : string 127make[1]: Leaving directory `/home/sestoft/mosml2.0/src/dynlibs/intinf' 128cd mgd; make test 129make[1]: Entering directory `/home/sestoft/mosml2.0/src/dynlibs/mgd' 130mosml testgdimage.sml 131Moscow ML version 2.00 (June 2000) 132Enter `quit();' to quit. 133[opening file "testgdimage.sml"] 134> val it = () : unit 135Now try 136 xv try.png hist.png pie.png graph.png 137 138make[1]: Leaving directory `/home/sestoft/mosml2.0/src/dynlibs/mgd' 139cd mgdbm; make test 140make[1]: Entering directory `/home/sestoft/mosml2.0/src/dynlibs/mgdbm' 141mosml -P full testgdbm.sml 142Moscow ML version 2.00 (June 2000) 143Enter `quit();' to quit. 144[opening file "testgdbm.sml"] 145> val it = () : unit 146> type datum = string 147 type table = table 148 datatype openmode = 149 (openmode, 150 {con NEWDB : openmode, 151 con READER : openmode, 152 con WRCREAT : openmode, 153 con WRITER : openmode}) 154 con WRITER = WRITER : openmode 155 val 'a withtable = fn : string * openmode -> (table -> 'a) -> 'a 156 exn GdbmError = fn : string -> exn 157 val 'a withtables = fn : (string * openmode) list -> (table list -> 'a) -> 'a 158 val numItems = fn : table -> int 159 con NEWDB = NEWDB : openmode 160 exn AlreadyThere = AlreadyThere : exn 161 val reorganize = fn : table -> unit 162 con WRCREAT = WRCREAT : openmode 163 val insert = fn : table -> string * string -> unit 164 val listKeys = fn : table -> string list 165 val fastwrite = ref false : bool ref 166 val listItems = fn : table -> (string * string) list 167 exn NotFound = NotFound : exn 168 val add = fn : table -> string * string -> unit 169 val find = fn : table -> string -> string 170 exn NotWriter = NotWriter : exn 171 val app = fn : (string * string -> unit) -> table -> unit 172 val peek = fn : table -> string -> string option 173 val 'a map = fn : (string * string -> 'a) -> table -> 'a list 174 val 'a fold = fn : (string * string * 'a -> 'a) -> 'a -> table -> 'a 175 con READER = READER : openmode 176 exn Closed = Closed : exn 177 val hasKey = fn : table -> string -> bool 178 val remove = fn : table -> string -> unit 179[opening file "../../mosmllib/test/auxil.sml"] 180> infix 1 seq 181 val ('a, 'b) seq = fn : 'a * 'b -> 'b 182> val check = fn : bool -> string 183> val check' = fn : (unit -> bool) -> string 184> val range = fn : int * int -> (int -> bool) -> bool 185> val checkrange = fn : int * int -> (int -> bool) -> string 186[closing file "../../mosmllib/test/auxil.sml"] 187> val it = () : unit 188> val test1a = "OK" : string 189> val test1b = "OK" : string 190> val test1c = "OK" : string 191 val test1d = "OK" : string 192 val test1e = "OK" : string 193 val test1f = "OK" : string 194 val test1g = "OK" : string 195 val test1h = "OK" : string 196 val test1i = "OK" : string 197 val test1j = "OK" : string 198 val test1k = "OK" : string 199 val pairs = 200 [("Hans 1", "Rischel"), ("Hans 2", "Dybkj�r"), ("Anders", "Kristensen")] : 201 (string * string) list 202> val test2a = "OK" : string 203> val test2b1 = "OK" : string 204 val test2b2 = "OK" : string 205 val test2c1 = "OK" : string 206 val test2c2 = "OK" : string 207 val test2d = "OK" : string 208 val test2e = "OK" : string 209 val test2f = "OK" : string 210 val test2g = "OK" : string 211 val test2h = "OK" : string 212 val test2i = "OK" : string 213 val test2j1 = "OK" : string 214 val test2j2 = "OK" : string 215 val test2j3 = "OK" : string 216 val test2j4 = "OK" : string 217 val 'a sortkvs = fn : (string * 'a) list -> (string * 'a) list 218 val sortks = fn : string list -> string list 219 val pairorder = 220 [("Hans 1", "Rischel"), ("Anders", "Kristensen"), ("Hans 2", "Dybkj�r")] : 221 (string * string) list 222 val test2k1 = "OK" : string 223 val test2k2 = "OK" : string 224 val test2l = "OK" : string 225 val test2m = "OK" : string 226 val test2n = "OK" : string 227 val test2o = "OK" : string 228 val test2p = "OK" : string 229 val test3a = "OK" : string 230 val test3b = "OK" : string 231 val test3c = "OK" : string 232> val test3d = "OK" : string 233make[1]: Leaving directory `/home/sestoft/mosml2.0/src/dynlibs/mgdbm' 234cd mmysql; make test 235make[1]: Entering directory `/home/sestoft/mosml2.0/src/dynlibs/mmysql' 236mosml testmysql.sml 237Moscow ML version 2.00 (June 2000) 238Enter `quit();' to quit. 239[opening file "testmysql.sml"] 240> val it = () : unit 241[opening file "../../mosmllib/test/auxil.sml"] 242> infix 1 seq 243 val ('a, 'b) seq = fn : 'a * 'b -> 'b 244> val check = fn : bool -> string 245> val check' = fn : (unit -> bool) -> string 246> val range = fn : int * int -> (int -> bool) -> bool 247> val checkrange = fn : int * int -> (int -> bool) -> string 248[closing file "../../mosmllib/test/auxil.sml"] 249> val it = () : unit 250> datatype dyntype = 251 (dyntype, 252 {con DateTimeTy : dyntype, 253 con DateTy : dyntype, 254 con IntTy : dyntype, 255 con RealTy : dyntype, 256 con StringTy : dyntype, 257 con TimeTy : dyntype, 258 con UnknownTy : dyntype}) 259 type dbconn = dbconn 260 datatype dbresultstatus = 261 (dbresultstatus, 262 {con Bad_response : dbresultstatus, 263 con Command_ok : dbresultstatus, 264 con Copy_in : dbresultstatus, 265 con Copy_out : dbresultstatus, 266 con Empty_query : dbresultstatus, 267 con Fatal_error : dbresultstatus, 268 con Nonfatal_error : dbresultstatus, 269 con Tuples_ok : dbresultstatus}) 270 type dbresult = dbresult 271 datatype dynval = 272 (dynval, 273 {con Date : int * int * int -> dynval, 274 con DateTime : date -> dynval, 275 con Int : int -> dynval, 276 con NullVal : dynval, 277 con Real : real -> dynval, 278 con String : string -> dynval, 279 con Time : int * int * int -> dynval}) 280 val getdynfield = fn : dbresult -> int -> int -> dynval 281 val fname = fn : dbresult -> int -> string 282 con NullVal = NullVal : dynval 283 val ftype = fn : dbresult -> int -> dyntype 284 val db = fn : dbconn -> string 285 val getreal = fn : dbresult -> int -> int -> real 286 con Real = fn : real -> dynval 287 val showquery = fn : dbconn -> string -> wseq 288 con Nonfatal_error = Nonfatal_error : dbresultstatus 289 exn Null = Null : exn 290 con Fatal_error = Fatal_error : dbresultstatus 291 con Copy_in = Copy_in : dbresultstatus 292 val fnumber = fn : dbresult -> string -> int option 293 con DateTimeTy = DateTimeTy : dyntype 294 con TimeTy = TimeTy : dyntype 295 val getstring = fn : dbresult -> int -> int -> string 296 val getdatetime = fn : dbresult -> int -> int -> date 297 val getbool = fn : dbresult -> int -> int -> bool 298 con String = fn : string -> dynval 299 val status = fn : dbconn -> bool 300 con Command_ok = Command_ok : dbresultstatus 301 val getdate = fn : dbresult -> int -> int -> int * int * int 302 con Date = fn : int * int * int -> dynval 303 con DateTy = DateTy : dyntype 304 val fromtag = fn : dyntype -> string 305 con Empty_query = Empty_query : dbresultstatus 306 val reset = fn : dbconn -> unit 307 val closebase = fn : dbconn -> unit 308 val getint = fn : dbresult -> int -> int -> int 309 con DateTime = fn : date -> dynval 310 con StringTy = StringTy : dyntype 311 con Tuples_ok = Tuples_ok : dbresultstatus 312 val ('a, 'b) applyto = fn : 'a -> ('a -> 'b) -> 'b 313 val nfields = fn : dbresult -> int 314 val openbase = fn : 315 {dbhost : string option, dbname : string option, dboptions : string option, 316 dbport : string option, dbpwd : string option, dbtty : string option, 317 dbuser : string option} -> dbconn 318 val resultstatus = fn : dbresult -> dbresultstatus 319 con RealTy = RealTy : dyntype 320 val host = fn : dbconn -> string option 321 val gettime = fn : dbresult -> int -> int -> int * int * int 322 con Time = fn : int * int * int -> dynval 323 val formattable = fn : dbresult -> wseq 324 con Bad_response = Bad_response : dbresultstatus 325 val errormessage = fn : dbconn -> string option 326 val copytableto = fn : dbconn * string * (string -> unit) -> unit 327 val options = fn : dbconn -> string 328 con IntTy = IntTy : dyntype 329 con UnknownTy = UnknownTy : dyntype 330 val cmdtuples = fn : dbresult -> int 331 val dynval2s = fn : dynval -> string 332 val copytablefrom = fn : dbconn * string * ((string -> unit) -> unit) -> unit 333 val execute = fn : dbconn -> string -> dbresult 334 val fnames = fn : dbresult -> string vector 335 val ftypes = fn : dbresult -> dyntype vector 336 val port = fn : dbconn -> string 337 val tty = fn : dbconn -> string 338 val ntuples = fn : dbresult -> int 339 val isnull = fn : dbresult -> int -> int -> bool 340 val getdyntups = fn : dbresult -> dynval vector vector 341 con Copy_out = Copy_out : dbresultstatus 342 val getdyntup = fn : dbresult -> int -> dynval vector 343 exn Closed = Closed : exn 344 con Int = fn : int -> dynval 345> val dbhost = SOME "localhost" : string option 346> val 'a dbport = NONE : 'a option 347> val 'a dboptions = NONE : 'a option 348> val 'a dbtty = NONE : 'a option 349> val 'a dbuser = NONE : 'a option 350> val 'a dbpwd = NONE : 'a option 351> val dbname = SOME "test" : string option 352> val pc = <dbconn> : dbconn 353> val info = ("test", SOME "localhost", "", "0", "") : 354 string * string option * string * string * string 355> val inst = fn : string -> dbresult 356 val res1 = <dbresult> : dbresult 357 val test1a = "OK" : string 358 val test1b = "OK" : string 359 val test1c = "OK" : string 360> val test1d = "OK" : string 361 val test1e = "OK" : string 362 val test1f = "OK" : string 363> val test1g = "OK" : string 364> val test1h = "OK" : string 365> val test1i = "OK" : string 366 val test1j = "OK" : string 367 val test1k = "OK" : string 368 val test1l = "OK" : string 369> val res2 = <dbresult> : dbresult 370 val res3 = <dbresult> : dbresult 371> val test3a = "OK" : string 372 val test3b = "OK" : string 373 val test3c = "OK" : string 374> val test3d = "OK" : string 375 val test3e = "OK" : string 376 val test3f = "OK" : string 377 val test3ga = ("OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK") : 378 string * string * string * string * string * string * string * string 379 val test3gb = ("OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK") : 380 string * string * string * string * string * string * string * string 381 val test3gc = ("OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK") : 382 string * string * string * string * string * string * string * string 383 val test3gd = ("OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK") : 384 string * string * string * string * string * string * string * string 385 val test3ha = ("OK", "OK") : string * string 386 val test3hb = ("OK", "OK") : string * string 387 val test3hc = ("OK", "OK") : string * string 388User: 0.290 System: 0.000 GC: 0.080 Real: 0.282 389User: 0.270 System: 0.010 GC: 0.090 Real: 0.284 390User: 0.290 System: 0.010 GC: 0.110 Real: 0.298 391User: 0.300 System: 0.000 GC: 0.090 Real: 0.298 392User: 0.290 System: 0.010 GC: 0.110 Real: 0.300 393User: 0.310 System: 0.000 GC: 0.090 Real: 0.304 394User: 0.290 System: 0.000 GC: 0.100 Real: 0.292 395User: 0.320 System: 0.000 GC: 0.120 Real: 0.314 396User: 0.300 System: 0.000 GC: 0.090 Real: 0.297 397User: 0.300 System: 0.000 GC: 0.090 Real: 0.307 398User: 0.300 System: 0.000 GC: 0.110 Real: 0.301 399User: 0.300 System: 0.000 GC: 0.130 Real: 0.303 400User: 0.300 System: 0.000 GC: 0.110 Real: 0.302 401User: 0.290 System: 0.000 GC: 0.100 Real: 0.294 402User: 0.310 System: 0.000 GC: 0.120 Real: 0.309 403> val test4 = "OK" : string 404 val res5 = <dbresult> : dbresult 405 val test5a = "OK" : string 406 val test6 = "OK" : string 407 val test7 = "OK" : string 408 val test8 = "OK" : string 409 val test9 = "OK" : string 410 val test10 = "OK" : string 411 val test11a = <dbresult> : dbresult 412 val test11b = () : unit 413 val 'a getall = fn : 'a -> dynval vector vector 414 val test11c = () : unit 415make[1]: Leaving directory `/home/sestoft/mosml2.0/src/dynlibs/mmysql' 416cd mpq; make test 417make[1]: Entering directory `/home/sestoft/mosml2.0/src/dynlibs/mpq' 418mosml testpsql.sml 419Moscow ML version 2.00 (June 2000) 420Enter `quit();' to quit. 421[opening file "testpsql.sml"] 422> val it = () : unit 423[opening file "../../mosmllib/test/auxil.sml"] 424> infix 1 seq 425 val ('a, 'b) seq = fn : 'a * 'b -> 'b 426> val check = fn : bool -> string 427> val check' = fn : (unit -> bool) -> string 428> val range = fn : int * int -> (int -> bool) -> bool 429> val checkrange = fn : int * int -> (int -> bool) -> string 430[closing file "../../mosmllib/test/auxil.sml"] 431> val it = () : unit 432> datatype dyntype = 433 (dyntype, 434 {con BoolTy : dyntype, 435 con ByteArrTy : dyntype, 436 con DateTimeTy : dyntype, 437 con DateTy : dyntype, 438 con IntTy : dyntype, 439 con OidTy : dyntype, 440 con RealTy : dyntype, 441 con StringTy : dyntype, 442 con TimeTy : dyntype, 443 con UnknownTy : oid -> dyntype}) 444 type dbconn = dbconn 445 datatype dbresultstatus = 446 (dbresultstatus, 447 {con Bad_response : dbresultstatus, 448 con Command_ok : dbresultstatus, 449 con Copy_in : dbresultstatus, 450 con Copy_out : dbresultstatus, 451 con Empty_query : dbresultstatus, 452 con Fatal_error : dbresultstatus, 453 con Nonfatal_error : dbresultstatus, 454 con Tuples_ok : dbresultstatus}) 455 type oid = oid 456 type dbresult = dbresult 457 datatype dynval = 458 (dynval, 459 {con Bool : bool -> dynval, 460 con Bytea : array -> dynval, 461 con Date : int * int * int -> dynval, 462 con DateTime : date -> dynval, 463 con Int : int -> dynval, 464 con NullVal : dynval, 465 con Oid : oid -> dynval, 466 con Real : real -> dynval, 467 con String : string -> dynval, 468 con Time : int * int * int -> dynval}) 469 val getdynfield = fn : dbresult -> int -> int -> dynval 470 val fname = fn : dbresult -> int -> string 471 con NullVal = NullVal : dynval 472 val ftype = fn : dbresult -> int -> dyntype 473 val db = fn : dbconn -> string 474 val getreal = fn : dbresult -> int -> int -> real 475 con Real = fn : real -> dynval 476 val showquery = fn : dbconn -> string -> wseq 477 con Nonfatal_error = Nonfatal_error : dbresultstatus 478 exn Null = Null : exn 479 con Fatal_error = Fatal_error : dbresultstatus 480 con Copy_in = Copy_in : dbresultstatus 481 val fnumber = fn : dbresult -> string -> int option 482 con DateTimeTy = DateTimeTy : dyntype 483 con TimeTy = TimeTy : dyntype 484 val getstring = fn : dbresult -> int -> int -> string 485 val getdatetime = fn : dbresult -> int -> int -> date 486 con ByteArrTy = ByteArrTy : dyntype 487 val getbool = fn : dbresult -> int -> int -> bool 488 con Bool = fn : bool -> dynval 489 con String = fn : string -> dynval 490 val status = fn : dbconn -> bool 491 con Command_ok = Command_ok : dbresultstatus 492 val getdate = fn : dbresult -> int -> int -> int * int * int 493 con Date = fn : int * int * int -> dynval 494 con DateTy = DateTy : dyntype 495 val fromtag = fn : dyntype -> string 496 con Empty_query = Empty_query : dbresultstatus 497 val reset = fn : dbconn -> unit 498 val closebase = fn : dbconn -> unit 499 val getint = fn : dbresult -> int -> int -> int 500 con DateTime = fn : date -> dynval 501 con StringTy = StringTy : dyntype 502 con Tuples_ok = Tuples_ok : dbresultstatus 503 val ('a, 'b) applyto = fn : 'a -> ('a -> 'b) -> 'b 504 val nfields = fn : dbresult -> int 505 con OidTy = OidTy : dyntype 506 val openbase = fn : 507 {dbhost : string option, dbname : string option, dboptions : string option, 508 dbport : string option, dbpwd : string option, dbtty : string option, 509 dbuser : string option} -> dbconn 510 val resultstatus = fn : dbresult -> dbresultstatus 511 con RealTy = RealTy : dyntype 512 val host = fn : dbconn -> string option 513 val gettime = fn : dbresult -> int -> int -> int * int * int 514 con Time = fn : int * int * int -> dynval 515 val formattable = fn : dbresult -> wseq 516 con Oid = fn : oid -> dynval 517 con Bad_response = Bad_response : dbresultstatus 518 val errormessage = fn : dbconn -> string option 519 val copytableto = fn : dbconn * string * (string -> unit) -> unit 520 val options = fn : dbconn -> string 521 con IntTy = IntTy : dyntype 522 con UnknownTy = fn : oid -> dyntype 523 val cmdtuples = fn : dbresult -> int 524 con Bytea = fn : array -> dynval 525 val dynval2s = fn : dynval -> string 526 val copytablefrom = fn : dbconn * string * ((string -> unit) -> unit) -> unit 527 val execute = fn : dbconn -> string -> dbresult 528 val fnames = fn : dbresult -> string vector 529 con BoolTy = BoolTy : dyntype 530 val ftypes = fn : dbresult -> dyntype vector 531 val port = fn : dbconn -> string 532 val tty = fn : dbconn -> string 533 val ntuples = fn : dbresult -> int 534 val isnull = fn : dbresult -> int -> int -> bool 535 val getdyntups = fn : dbresult -> dynval vector vector 536 con Copy_out = Copy_out : dbresultstatus 537 val getdyntup = fn : dbresult -> int -> dynval vector 538 exn Closed = Closed : exn 539 con Int = fn : int -> dynval 540> val dbhost = SOME "localhost" : string option 541> val 'a dbport = NONE : 'a option 542> val 'a dboptions = NONE : 'a option 543> val 'a dbtty = NONE : 'a option 544> val 'a dbuser = NONE : 'a option 545> val 'a dbpwd = NONE : 'a option 546> val 'a dbname = NONE : 'a option 547> val pc = <dbconn> : dbconn 548> val info = ("sestoft", SOME "localhost", "", "5432", "") : 549 string * string option * string * string * string 550> val inst = fn : string -> dbresult 551 val res1 = <dbresult> : dbresult 552 val test1a = "OK" : string 553 val test1b = "OK" : string 554 val test1c = "OK" : string 555> val test1d = "OK" : string 556 val test1e = "OK" : string 557 val test1f = "OK" : string 558> val test1g = "OK" : string 559> val test1h = "OK" : string 560> val test1i = "OK" : string 561 val test1j = "OK" : string 562 val test1k = "OK" : string 563 val test1l = "OK" : string 564> val res2 = <dbresult> : dbresult 565 val res3 = <dbresult> : dbresult 566> val test3a = "OK" : string 567 val test3b = "OK" : string 568 val test3c = "OK" : string 569 val test3d = "OK" : string 570 val test3e = "OK" : string 571 val test3f = "OK" : string 572 val test3ga = ("OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK") : 573 string * string * string * string * string * string * string * string 574 val test3gb = ("OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK") : 575 string * string * string * string * string * string * string * string 576 val test3gc = ("OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK") : 577 string * string * string * string * string * string * string * string 578 val test3gd = ("OK", "OK", "OK", "OK", "OK", "OK", "OK", "OK") : 579 string * string * string * string * string * string * string * string 580 val test3ha = ("OK", "OK") : string * string 581 val test3hb = ("OK", "OK") : string * string 582 val test3hc = ("OK", "OK") : string * string 583 val test4 = "OK" : string 584 val res5 = <dbresult> : dbresult 585 val test5a = "OK" : string 586 val test6 = "OK" : string 587 val test7 = "OK" : string 588 val test8 = "OK" : string 589 val test9 = "OK" : string 590 val test10 = "OK" : string 591make[1]: Leaving directory `/home/sestoft/mosml2.0/src/dynlibs/mpq' 592cd mregex; make test 593make[1]: Entering directory `/home/sestoft/mosml2.0/src/dynlibs/mregex' 594mosml testregex.sml 595Moscow ML version 2.00 (June 2000) 596Enter `quit();' to quit. 597[opening file "testregex.sml"] 598> val it = () : unit 599[opening file "../../mosmllib/test/auxil.sml"] 600> infix 1 seq 601 val ('a, 'b) seq = fn : 'a * 'b -> 'b 602> val check = fn : bool -> string 603> val check' = fn : (unit -> bool) -> string 604> val range = fn : int * int -> (int -> bool) -> bool 605> val checkrange = fn : int * int -> (int -> bool) -> string 606[closing file "../../mosmllib/test/auxil.sml"] 607> val it = () : unit 608> datatype eflag = (eflag,{con Notbol : eflag, con Noteol : eflag}) 609 type regex = regex 610 datatype cflag = 611 (cflag,{con Extended : cflag, con Icase : cflag, con Newline : cflag}) 612 datatype replacer = 613 (replacer, 614 {con Str : string -> replacer, 615 con Sus : int -> replacer, 616 con Tr : (string -> string) * int -> replacer, 617 con Trs : (substring vector -> string) -> replacer}) 618 val ('a, 'b) fapp = fn : ('a -> 'b) -> 'a * 'b list -> 'b list 619 val get = fn : int -> substring vector -> string 620 con Noteol = Noteol : eflag 621 con Notbol = Notbol : eflag 622 val 'a map = fn : regex -> (substring vector -> 'a) -> string -> 'a list 623 val regnexec = fn : 624 regex -> eflag list -> substring -> substring vector option 625 con Extended = Extended : cflag 626 exn Regex = fn : string -> exn 627 con Str = fn : string -> replacer 628 val regexecBool = fn : regex -> eflag list -> string -> bool 629 con Icase = Icase : cflag 630 val regnexecBool = fn : regex -> eflag list -> substring -> bool 631 val substitute1 = fn : regex -> (string -> string) -> string -> string 632 val regmatchBool = fn : 633 {pat : string, tgt : string} -> cflag list -> eflag list -> bool 634 val 'a fold = fn : 635 regex -> (substring * 'a -> 'a) * (substring vector * 'a -> 'a) -> 'a -> 636 string -> 'a 637 val replace1 = fn : regex -> replacer list -> string -> string 638 val app = fn : regex -> (substring vector -> unit) -> string -> unit 639 con Trs = fn : (substring vector -> string) -> replacer 640 val fields = fn : regex -> string -> substring list 641 val regmatch = fn : 642 {pat : string, tgt : string} -> cflag list -> eflag list -> 643 substring vector option 644 val replace = fn : regex -> replacer list -> string -> string 645 val substitute = fn : regex -> (string -> string) -> string -> string 646 con Tr = fn : (string -> string) * int -> replacer 647 val regcomp = fn : string -> cflag list -> regex 648 con Sus = fn : int -> replacer 649 con Newline = Newline : cflag 650 val regexec = fn : regex -> eflag list -> string -> substring vector option 651 val tokens = fn : regex -> string -> substring list 652User: 0.000 System: 0.000 GC: 0.000 Real: 0.000 653size(s) = 23; length(res) = 5 654User: 0.000 System: 0.000 GC: 0.000 Real: 0.000 655size(s) = 46; length(res) = 10 656User: 0.000 System: 0.000 GC: 0.000 Real: 0.000 657size(s) = 92; length(res) = 20 658User: 0.000 System: 0.000 GC: 0.000 Real: 0.000 659size(s) = 184; length(res) = 40 660User: 0.000 System: 0.000 GC: 0.000 Real: 0.001 661size(s) = 368; length(res) = 80 662User: 0.000 System: 0.000 GC: 0.000 Real: 0.002 663size(s) = 736; length(res) = 160 664User: 0.020 System: 0.000 GC: 0.020 Real: 0.017 665size(s) = 1472; length(res) = 320 666User: 0.000 System: 0.000 GC: 0.000 Real: 0.007 667size(s) = 2944; length(res) = 640 668User: 0.020 System: 0.000 GC: 0.000 Real: 0.015 669size(s) = 5888; length(res) = 1280 670User: 0.030 System: 0.000 GC: 0.000 Real: 0.033 671size(s) = 11776; length(res) = 2560 672User: 0.080 System: 0.000 GC: 0.000 Real: 0.072 673size(s) = 23552; length(res) = 5120 674User: 0.130 System: 0.000 GC: 0.010 Real: 0.133 675size(s) = 47104; length(res) = 10240 676User: 0.280 System: 0.000 GC: 0.070 Real: 0.289 677size(s) = 94208; length(res) = 20480 678User: 0.590 System: 0.000 GC: 0.120 Real: 0.592 679size(s) = 188416; length(res) = 40960 680> val test1a = "OK" : string 681 val test1b = "OK" : string 682 val test2a = "OK" : string 683 val test2b = "OK" : string 684 val test3a = "OK" : string 685 val test3b = "OK" : string 686 val test4a = "OK" : string 687 val test4b = "OK" : string 688 val test5a = "OK" : string 689 val test5b = "OK" : string 690 val test6a = "OK" : string 691 val test6b = "OK" : string 692 val test6c = "OK" : string 693 val test6d = "OK" : string 694 val test6e = "OK" : string 695 val test6f = "OK" : string 696 val test6g = "OK" : string 697 val test7a = "OK" : string 698 val test7b = "OK" : string 699 val test7c = "OK" : string 700 val test7d = "OK" : string 701 val test7e = "OK" : string 702 val test8a = "OK" : string 703 val test8b = "OK" : string 704 val test8c = "OK" : string 705 val test8d = "OK" : string 706 val test9a = "OK" : string 707 val test9b = "OK" : string 708 val test10a = "OK" : string 709 val test10b = "OK" : string 710 val test10c = "OK" : string 711 val test10d = "OK" : string 712 val test11a = "OK" : string 713 val test11b = "OK" : string 714 val test11c = "OK" : string 715 val test11d = "OK" : string 716 val test12a = "OK" : string 717 val test12b = "OK" : string 718 val test13a = "OK" : string 719 val test13b = "OK" : string 720 val test14a = "OK" : string 721 val test14b = "OK" : string 722 val test15a = "OK" : string 723 val test16a = "OK" : string 724 val test16b = "OK" : string 725make[1]: Leaving directory `/home/sestoft/mosml2.0/src/dynlibs/mregex' 726cd munix; make test 727make[1]: Entering directory `/home/sestoft/mosml2.0/src/dynlibs/munix' 728gcc -O2 -o sieve sieve.c 729mosml testunix.sml 730Moscow ML version 2.00 (June 2000) 731Enter `quit();' to quit. 732[opening file "testunix.sml"] 733> val it = () : unit 734> type signal = signal 735 type proc = proc 736 type elem = char 737 type vector = string 738 type cs = cs 739 type instream = instream 740 type outstream = outstream 741 val kill = fn : proc * signal -> unit 742 val streamsOf = fn : proc -> instream * outstream 743 val reap = fn : proc -> status 744 val execute = fn : string * string list -> proc 745 val executeInEnv = fn : string * string list * string list -> proc 746 val stdErr = <outstream> : outstream 747 val openAppend = fn : string -> outstream 748 val flushOut = fn : outstream -> unit 749 val inputAll = fn : instream -> string 750 val inputLine = fn : instream -> string 751 val output1 = fn : outstream * char -> unit 752 val closeIn = fn : instream -> unit 753 val closeOut = fn : outstream -> unit 754 val lookahead = fn : instream -> char option 755 val stdIn = <instream> : instream 756 val input = fn : instream -> string 757 val print = fn : string -> unit 758 val inputNoBlock = fn : instream -> string option 759 val endOfStream = fn : instream -> bool 760 val output = fn : outstream * string -> unit 761 val inputN = fn : instream * int -> string 762 val outputSubstr = fn : outstream * substring -> unit 763 val openIn = fn : string -> instream 764 val openOut = fn : string -> outstream 765 val stdOut = <outstream> : outstream 766 val input1 = fn : instream -> char option 767 val 'a scanStream = fn : 768 ((cs -> (char * cs) option) -> cs -> ('a * cs) option) -> instream -> 769 'a option 7700 0 7711 0 7722 1 7733 1 7744 0 7755 1 7766 0 7777 1 7788 0 7799 0 78010 0 78111 1 78212 0 78313 1 78414 0 78515 0 78616 0 78717 1 78818 0 78919 1 79020 0 79121 0 79222 0 79323 1 79424 0 79525 0 79626 0 79727 0 79828 0 79929 1 80030 0 80131 1 80232 0 80333 0 80434 0 80535 0 80636 0 80737 1 80838 0 80939 0 81040 0 81141 1 81242 0 81343 1 81444 0 81545 0 81646 0 81747 1 81848 0 81949 0 82050 0 82151 0 82252 0 82353 1 82454 0 82555 0 82656 0 82757 0 82858 0 82959 1 83060 0 83161 1 83262 0 83363 0 83464 0 83565 0 83666 0 83767 1 83868 0 83969 0 84070 0 84171 1 84272 0 84373 1 84474 0 84575 0 84676 0 84777 0 84878 0 84979 1 85080 0 85181 0 85282 0 85383 1 85484 0 85585 0 85686 0 85787 0 85888 0 85989 1 86090 0 86191 0 86292 0 86393 0 86494 0 86595 0 86696 0 86797 1 86898 0 86999 0 870100 0 871101 1 872102 0 873103 1 874104 0 875105 0 876106 0 877107 1 878108 0 879109 1 880110 0 881111 0 882112 0 883113 1 884114 0 885115 0 886116 0 887117 0 888118 0 889119 0 890120 0 891121 0 892122 0 893123 0 894124 0 895125 0 896126 0 897127 1 898128 0 899129 0 900130 0 901131 1 902132 0 903133 0 904134 0 905135 0 906136 0 907137 1 908138 0 909139 1 910140 0 911141 0 912142 0 913143 0 914144 0 915145 0 916146 0 917147 0 918148 0 919149 1 920150 0 921151 1 922152 0 923153 0 924154 0 925155 0 926156 0 927157 1 928158 0 929159 0 930160 0 931161 0 932162 0 933163 1 934164 0 935165 0 936166 0 937167 1 938168 0 939169 0 940170 0 941171 0 942172 0 943173 1 944174 0 945175 0 946176 0 947177 0 948178 0 949179 1 950180 0 951181 1 952182 0 953183 0 954184 0 955185 0 956186 0 957187 0 958188 0 959189 0 960190 0 961191 1 962192 0 963193 1 964194 0 965195 0 966196 0 967197 1 968198 0 969199 1 970> val startandstop = fn : int -> string 971> val p = <proc> : proc 972Started subprocess... 973> val is = <instream> : instream 974 val os = <outstream> : outstream 975> val wr = fn : int -> string 976> val res = ["1\n", "1\n", "0\n", "0\n", "0\n"] : string list 977make[1]: Leaving directory `/home/sestoft/mosml2.0/src/dynlibs/munix' 978