From d22ec6786bb2f413f780b42b34f4fe652c9254e7 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Sat, 29 Oct 2011 09:15:29 +0000 Subject: * interp/compiler.boot (compHasFormat): Simplify type form. --- src/ChangeLog | 4 ++++ src/interp/compiler.boot | 4 ++-- src/interp/daase.lisp | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/ChangeLog b/src/ChangeLog index fc1b46f5..7991ebf1 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2011-10-29 Gabriel Dos Reis + + * interp/compiler.boot (compHasFormat): Simplify type form. + 2011-10-28 Gabriel Dos Reis * interp/nruncomp.boot (mkDomainCatName): Remove. diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot index cbae1bbe..768e1b5b 100644 --- a/src/interp/compiler.boot +++ b/src/interp/compiler.boot @@ -1248,7 +1248,7 @@ compHas(pred is ["has",a,b],m,e) == --used in various other places to make the discrimination compHasFormat(pred is ["has",olda,b],e) == - argl := rest $form + argl := $form.args formals := TAKE(#argl,$FormalMapVariableList) a := applySubst(pairList(formals,argl),olda) [a,.,e] := comp(a,$EmptyMode,e) or return nil @@ -1259,7 +1259,7 @@ compHasFormat(pred is ["has",olda,b],e) == mkList [MKQ op,mkList [mkTypeForm type for type in sig]]] b is ["Join",:l] or b is ["CATEGORY",.,:l] => ["AND",:[compHasFormat(["has",olda,c],e) for c in l]] - isCategoryForm(b,e) => ["HasCategory",a,mkTypeForm b] + isCategoryForm(b,e) => ["HasCategory",a,simplifyVMForm mkTypeForm b] stackAndThrow('"Second argument to %1b must be a category, or a signature or an attribute",["has"]) --% IF diff --git a/src/interp/daase.lisp b/src/interp/daase.lisp index ddade882..7196c742 100644 --- a/src/interp/daase.lisp +++ b/src/interp/daase.lisp @@ -229,7 +229,7 @@ being-defined ; T is definition of constructor is being processed load-path ; full object path name, when loaded. capsule-definitions ; capsule-level definitions - template ; for a category, this the generic instantce. + template ; for a category, this is the generic instance. ; for a functor, this is the template. ) ; database structure -- cgit v1.2.3