Sysop: | Amessyroom |
---|---|
Location: | Fayetteville, NC |
Users: | 25 |
Nodes: | 6 (0 / 6) |
Uptime: | 26:40:45 |
Calls: | 491 |
Files: | 1,078 |
Messages: | 69,898 |
(loop with array = #(1 4 9 16 "Foo" "Bar" 'frobozz |Bogomatic|)
for i across array
for j from 0 by 1
do
(format t "Element ~D is ~A~%" j i))
Element 0 is 1
Element 1 is 4
Element 2 is 9
Element 3 is 16
Element 4 is Foo
Element 5 is Bar
Element 6 is 'FROBOZZ
Element 7 is Bogomatic
Christopher Browne wrote:
(loop with array = #(1 4 9 16 "Foo" "Bar" 'frobozz |Bogomatic|)
for i across array
for j from 0 by 1
do
(format t "Element ~D is ~A~%" j i))
Element 0 is 1
Element 1 is 4
Element 2 is 9
Element 3 is 16
Element 4 is Foo
Element 5 is Bar
Element 6 is 'FROBOZZ
Element 7 is Bogomatic
We can make it shorter by using a Lispy language instead of CL.
Gauche Scheme
(use srfi-43) ;; vector-for-each
(vector-for-each
(cut print "Element " <> " is " <>)
#(1 4 9 16 "Foo" "Bar" 'frobozz |Bogomatic|))
Element 0 is 1
Element 1 is 4
Element 2 is 9
Element 3 is 16
Element 4 is Foo
Element 5 is Bar
Element 6 is 'frobozz
Element 7 is Bogomatic
Another vector library.
(use scheme.vector)
(vector-for-each-with-index
(cut print "Element " <> " is " <>)
#(1 4 9 16 "Foo" "Bar" 'frobozz |Bogomatic|))