On Fri, Aug 22, 2008 at 2:53 PM, Martin Rubey wrote:
>
> Dear all,
>
> I'm trying to debug one of the very last quirks of the aldor interface, to
> get aldor-combinat completely functional in axiom.
>
> 1) (hopefully) easy question:
>
> what is the semantics of
>
>  foo is bar
>
> in boot.

'is' is the pattern matching operator. You can read a little about it here:

http://axiom-wiki.newsynthesis.org/axiom--test--1/src/boot/Makefile

The the explanation is sketchy and rather poorly written.

> In particular, from hashcode.boot:
>
>        type is ['QUOTE, val] => hashType(val, percentHash)

This means: compare the contents of the variable 'type' to the pattern
['QUOTE, val]. If it matches, i.e. if 'type' is a two element list and
the first element is the constant 'QUOTE then set 'val' to the second
element of 'type' and call 'hashType(val, percentHash)'.

>        type is [dom] => hashString SYMBOL_-NAME dom

Similarly, 'type' must be a single element list. In that case 'dom' is
set to that element.

>        type is ['_:, ., type2] => hashType(type2, percentHash)

'type' must be a three element list with first element literally :

>        isDomain type => getDomainHash type
>        [op, :args] := type
>

: is the pattern matching operator that matches more than one element.

> I'd be very grateful if you could explain lines 1-3 and possibly 4 to me.
>
> 2) for the ambitious:
>
> get the aldor-interface
>
> get svn://svn.risc.uni-linz.ac.at/hemmecke/combinat/branches/iso-experiment
>
> and issue the following lines
>
> cd combinat
> make VARIANTSTOBUILD=axiom
> cd lib
> for f in $(ar t libcombinatax.al); do echo ")lib $f" >> combinat.input; done
> cd ../src
> axiom -nox
> )re ../lib/combinat
> G := Interpret([parse "FunctorialCompose(Subset, Combination(2)))"], ACINT)
> l: SetSpecies ACINT := set([1,2,3]::List ACINT::ACList ACINT)
> s := structures(l)$G
> )lisp  (si::use-fast-links nil)
> )se br br
> next! s;
>
> the last line will fail, and should give an error like
>
>   (|Combination| 2) is not of type SYMBOL.
>
> Would be wonderful,
>

http://axiom-wiki.newsynthesis.org/SandBoxSpecies#bottom

On axiom-wiki using the new aldor interface compiled with GCL and the
most recent source for FriCAS after

...
s := structures(l)$G

I get:

   >> System error:
   User error: Reached a 'never'

--------

Regards,
Bill Page.

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
open-axiom-devel mailing list
open-axiom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel

Reply via email to