Gregory Ewing <greg.ew...@canterbury.ac.nz>: > I don't agree that the word "for" necessarily implies proceduralness.
Programming languages stole the word from math, where it is nonprocedural. Really, "for" is just a preposition. In Algol, for example, proceduralness was not in the word "for" but in "do": for p := 1 step 1 until n do for q := 1 step 1 until m do if abs(a[p, q]) > y then begin y := abs(a[p, q]); i := p; k := q end <URL: https://en.wikipedia.org/wiki/ALGOL#ALGOL_60> Pascal is similar: for i:= 1 to 10 do writeln(i); <URL: https://www.tutorialspoint.com/pascal/pascal_for_do_loop.htm> As is sh: for i in *.py; do mv "$i" "$i.bak" done Common lisp uses "do" as well: (setq a-vector (vector 1 nil 3 nil)) (do ((i 0 (+ i 1)) ;Sets every null element of a-vector to zero. (n (array-dimension a-vector 0))) ((= i n)) (when (null (aref a-vector i)) (setf (aref a-vector i) 0))) => NIL <URL: http://www.lispworks.com/documentation/lw60/CLHS/Body/m_do_do. htm> I guess we have C to blame for the redefinition of the word "for" in programmers' minds. Marko -- https://mail.python.org/mailman/listinfo/python-list