newLISP Fan Club

Forum => newLISP newS => Topic started by: Jeremy Dunn on February 06, 2009, 11:51:07 AM

Title: dup
Post by: Jeremy Dunn on February 06, 2009, 11:51:07 AM
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).
Title:
Post by: newBert on February 07, 2009, 11:55:07 AM
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 :-/
Title:
Post by: newBert on February 10, 2009, 01:26:45 AM
Try this way instead:
> (array 3 3 '(0))
((0 0 0) (0 0 0) (0 0 0))

;o)