axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] alql and shoe


From: Waldek Hebisch
Subject: Re: [Axiom-developer] alql and shoe
Date: Fri, 1 Dec 2006 02:17:36 +0100 (CET)

> Waldek Hebisch <address@hidden> writes:
> 
> | Gaby, it seems that your change:
> | 
> | 2006-11-19  Gabriel Dos Reis  <address@hidden>
> | 
> |         * Makefile.pamphlet (alql.boot): Translate with bootsys.
> |         * Makefile.in: Regenerate.
> | 
> | broke examples in Chapter 13 of Axiom book.  The patch below (applied
> | as version 345 in wh-sandbox) fixed the problem for me.  Some remarks:
> | 
> | 1) AFAICS shoe requres package declaration (otherwise we end up in
> | default lisp package). 
> 
> Yes.
> 
> | Unfortunatly, old boot can not handle such  declaration...
> 
> ah, yes.
> 
> | 2) shoe insist on rewriting 'member' to 'MEMBER'.
> 
> Yes, member is a kind of library function in new Boot. Every symbol
> goes through bfReName (boot/tytree1.boot).  However, you can pretend
> that you have a function member that is not a library function if you
> write its name as a string literal
> 
>   "member"(kind, '("o" "k" "c" "d" "p"))
> 
> which translates to
> 
>         ('|member| |kind| '("o" "k" "c" "d" "p"))
> 

Indeed.  I have tried some other variation and did not work. So the
following should be enough:

--- wh-sandbox.bb/src/interp/alql.boot.pamphlet 2006-11-30 01:00:42.000000000 
+0100
+++ wh-sandbox/src/interp/alql.boot.pamphlet    2006-12-01 02:14:24.000000000 
+0100
@@ -46,10 +46,13 @@
 <<*>>=
 <<license>>
 
+)package "BOOT"
+
 getBrowseDatabase(kind) ==
   $includeUnexposed? : local := true
-  not MEMBER(kind,'("o" "k" "c" "d" "p")) => nil
+  not "member"(kind,'("o" "k" "c" "d" "p")) => nil
   grepConstruct('"*",INTERN kind)
+
 stringMatches?(pattern,subject) ==
   FIXP basicMatch?(pattern,subject) => true
   false


-- 
                              Waldek Hebisch
address@hidden 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]