From 12b1b74f1e952694c8f182eb2b4ab369f6005ddf Mon Sep 17 00:00:00 2001 From: dos-reis Date: Sun, 14 Jun 2009 12:26:50 +0000 Subject: Add support for existential type recovery. * interp/compiler.boot (compRecoverDomain): New. Split from compRecoverGuard. (compRecoverGuard): Split. Handle existential type recovery. (compScheme): New. Register as compiler. * interp/g-opt.boot (optLET*): New. Turn into LET-form if appropriate. Register as backend transformer. * interp/fnewmeta.lisp (|PARSE-Scheme|): New. (|PARSE-Quantifier|): Likewise. (|PARSE-QuantifiedVariableList|): Likewise. (|PARSE-QuantifiedVariable|): Likewise. * interp/metalex.lisp (KEYWORDS): Add 'forall' and 'exist' as new keywords. * interp/newaux.lisp: Register parser for expression schemes. * algebra/any.spad.pamphlet (=$Any): If the underlying domain has BasicType, use that equality operator. (coerce$Any): If the underlying domain has CoercibleTo OutputForm then use it. --- src/ChangeLog | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/ChangeLog') diff --git a/src/ChangeLog b/src/ChangeLog index 87ae21c9..afa502b3 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,24 @@ +2009-06-14 Gabriel Dos Reis + + Add support for existential type recovery. + * interp/compiler.boot (compRecoverDomain): New. Split from + compRecoverGuard. + (compRecoverGuard): Split. Handle existential type recovery. + (compScheme): New. Register as compiler. + * interp/g-opt.boot (optLET*): New. Turn into LET-form if + appropriate. Register as backend transformer. + * interp/fnewmeta.lisp (|PARSE-Scheme|): New. + (|PARSE-Quantifier|): Likewise. + (|PARSE-QuantifiedVariableList|): Likewise. + (|PARSE-QuantifiedVariable|): Likewise. + * interp/metalex.lisp (KEYWORDS): Add 'forall' and 'exist' as new + keywords. + * interp/newaux.lisp: Register parser for expression schemes. + * algebra/any.spad.pamphlet (=$Any): If the underlying domain has + BasicType, use that equality operator. + (coerce$Any): If the underlying domain has CoercibleTo OutputForm + then use it. + 2009-06-13 Gabriel Dos Reis * algebra/any.spad.pamphlet (AnyFunctions1): Remove `pretend' -- cgit v1.2.3