From c8f38c41658b30aa833475be960f4e595ba8132a Mon Sep 17 00:00:00 2001 From: dos-reis Date: Fri, 10 Feb 2012 03:49:37 +0000 Subject: * interp/define.boot (mkEvalableCategoryForm): Compile only CATEGORY and SubsetCategory forms. --- src/ChangeLog | 5 +++++ src/interp/define.boot | 15 ++++++++------- 2 files changed, 13 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/ChangeLog b/src/ChangeLog index 070189e8..8125b842 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2012-02-09 Gabriel Dos Reis + + * interp/define.boot (mkEvalableCategoryForm): Compile only + CATEGORY and SubsetCategory forms. + 2012-02-09 Gabriel Dos Reis * interp/database.boot (categoryConstructor?): New. diff --git a/src/interp/define.boot b/src/interp/define.boot index 608f34bd..2b9470f2 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -910,14 +910,15 @@ macroExpandList(l,e) == mkEvalableCategoryForm c == c is [op,:argl] => - op is "Join" => [op,:[mkEvalableCategoryForm x for x in argl]] op is "DomainSubstitutionMacro" => mkEvalableCategoryForm second argl - op is "mkCategory" => c - builtinCategoryName? op => - ([x,m,$e]:= compOrCroak(c,$EmptyMode,$e); m=$Category => x) - categoryConstructor? op => [op,:[MKQ x for x in argl]] - [x,m,$e]:= compOrCroak(c,$EmptyMode,$e) - m=$Category => x + op in '(QUOTE mkCategory EnumerationCategory) => c + op is ":" => [op,second c,mkEvalableCategoryForm third c] + op in '(CATEGORY SubsetCategory) => + [x,m,$e] := compOrCroak(c,$EmptyMode,$e) + m = $Category => x + MKQ c + categoryConstructor? op => + [op,:[mkEvalableCategoryForm x for x in argl]] MKQ c MKQ c -- cgit v1.2.3