Lutz,
Why not make DUP take additional multiplier arguments so that
(dup x n1 n2 n3 ....) is the same as (dup (dup (dup x n1) n2) n2)? That way if I want a 3x3 matrix of zeros I can write (dup 0 3 3) instead of (dup (dup 0 3) 3).
Maybe you can do also:
(dup (series 0 0 3) 3)
;-> ((0 0 0) (0 0 0) (0 0 0))
Quote from: "Manual and Reference"
(series num-start num-factor num-count)
In the first syntax, series creates a geometric sequence with num-count elements starting with the element in num-start. Each subsequent element is multiplied by num-factor.
P.S.: sorry, i just realize that it amounts to the same thing :-/
Try this way instead:
> (array 3 3 '(0))
((0 0 0) (0 0 0) (0 0 0))
;o)