[Top][All Lists]

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

Re: [Axiom-developer] Re: [open-axiom-devel] [fricas-devel] Re: iterator

From: Gabriel Dos Reis
Subject: Re: [Axiom-developer] Re: [open-axiom-devel] [fricas-devel] Re: iterators and cartesian product.
Date: 22 Oct 2007 05:30:25 -0500

Francois Maltey <address@hidden> writes:


| It looks like mathematical expression {matrix ... | (a,b,c,d) in {1..9}^4}.
| This command breaks this previous mathematical set
| but build Union_{for a} (Unioun_{for b} (Unioun_{for c} set matrix for d))
| concat [concat [concat [[matrix [[a,b,15-a-b],[c,d,15-c-d]] for a in 1..9]
|    for b in 1..9] for c in 1..9] for d in 1..9] 
| mupad doesn't has a perfect syntax because lists and intervals don't have
| the same operator : [..x.. $x in L] and [..x.. $x=1..10]. Axiom makes better !
| [..x.. for x in L] and [..x.. for x in 1..10].
| For theses 2 examples I feel mupad better than maple. I don't know 
| Is it an answer to your question ?

A general remark: `Perfect syntax' is an illusion.

Mathematics are great for ideas, but their notations are deceptive
sources of inspiration.  One source of difficulty is that mathematical
notations use full 2-3 dimensions, whereas we are still struggling
with sequence of characters.  Another source of difficulty is that
mathematical notations are highly context sensitive -- you don't
really want a programming language to have a highly context sensitive
syntax when you plan to write large libraries in that language.  There
are things that work well for `programming in small' (e.g. scripts of
10-20 lines) and things do not scale to `programming in large'
(e.g. 10-100 thousands of lines of libraries)

-- Gaby

reply via email to

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