Commit ce14ad3a authored by Pietro Abate's avatar Pietro Abate
Browse files

[r2002-10-20 19:36:41 by cvscast] Empty log message

Original author: cvscast
Date: 2002-10-20 19:36:41+00:00
parent 99542d60
......@@ -15,6 +15,9 @@ DRIVER = driver/cduce.cmo
DIRS = parser typing types driver
OBJECTS = $(TYPES) $(PARSER) $(TYPING)
XOBJECTS = $(OBJECTS:.cmo=.cmx)
XDRIVER = $(DRIVER:.cmo=.cmx)
DEPEND = parser/*.ml parser/*.mli typing/*.ml typing/*.mli types/*.ml types/*.mli driver/*.mli driver/*.ml
INCLUDES = -I +camlp4 -I parser -I types -I typing
......@@ -23,9 +26,16 @@ SYNTAX_PARSER = -pp 'camlp4o pa_extend.cmo'
all.cma: $(OBJECTS)
ocamlc -g -o all.cma -I +camlp4 gramlib.cma nums.cma -a $(OBJECTS)
all.cmxa: $(XOBJECTS)
ocamlopt -o all.cmxa -I +camlp4 -a $(XOBJECTS)
cduce: all.cma $(DRIVER)
ocamlc -g -o cduce all.cma $(DRIVER)
cduce.opt: all.cmxa $(XDRIVER)
ocamlopt -o cduce.opt -I +camlp4 gramlib.cmxa nums.cmxa all.cmxa $(XDRIVER)
compute_depend:
@echo "Computing dependencies ..."
ocamldep $(INCLUDES) $(SYNTAX_PARSER) $(DEPEND) > depend
......@@ -46,7 +56,7 @@ clean:
.ml.cmo:
ocamlc -g -c $(SYNTAX_PARSER) $(INCLUDES) $<
.ml.cmx:
ocamlopt -g -c $(SYNTAX_PARSER) $(INCLUDES) $<
ocamlopt -c $(SYNTAX_PARSER) $(INCLUDES) $<
.mli.cmi:
ocamlc -g -c $(INCLUDES) $<
......
......@@ -4,7 +4,6 @@ type Name = <name>[String];;
type Addr = <addr>[String];;
type Tel = <tel>[String];;
(*
<addrbook>[
<name>["Haruo Hosoya"]
<addr>["Tokyo"]
......@@ -14,11 +13,9 @@ type Tel = <tel>[String];;
<name>["Peter Buneman"]
<addr>["Scotland"]
];;
*)
(* converting an address book into a telephone list *)
(*
fun mkTelList ([ (Name Addr Tel?)* ] -> [ (Name Tel)* ])
| [ <name>n <addr>a <tel>t ; rest] -> [ <name>n <tel>t ; mkTelList rest]
| [ <name>n <addr>a; rest] -> mkTelList rest
......@@ -28,9 +25,7 @@ fun mkTelList ([ (Name Addr Tel?)* ] -> [ (Name Tel)* ])
fun mkTelList (Addrbook -> [ (Name Tel)* ])
<_>[ ( ( (x::Name) Addr (x::Tel) ) | _ )* ] -> x
;;
*)
(*
fun (Int -> Addrbook) x ->
<addrbook>[
<name>["Haruo Hosoya"]
......@@ -42,7 +37,6 @@ fun (Int -> Addrbook) x ->
<addr>["Scotland"]
]
;;
*)
match <addrbook>[
<name>["Haruo Hosoya"]
......
......@@ -278,9 +278,10 @@ and empty_rec_record c =
List.for_all aux (get_record c)
let is_empty d =
let old = !memo in
let r = empty_rec d in
memo := Assumptions.empty;
cache_false := Assumptions.empty;
if not r then memo := old;
(* cache_false := Assumptions.empty; *)
r
let non_empty d =
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment