[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
mathematica.
|
| 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
[Axiom-developer] Re: [open-axiom-devel] [fricas-devel] Re: iterators, Ralf Hemmecke, 2007/10/21