do¶
Evaluate expression/s some number of times
do[count;e1;e2;e3;…;en]
Control construct. Where
countis a non-negative integere1,e2, …enare expressions
the expressions e1 to en are evaluated, in order, count times.
The result of do is always the generic null.
Continued fraction for \(\pi\), for 7 steps:
q)r:()
q)t:2*asin 1
q)do[7;r,:q:floor t;t:reciprocal t-q]
q)r
3 7 15 1 292 1 1
do is not a function but a control construct. It cannot be iterated or projected.
Name scope¶
The brackets of the expression list do not create lexical scope. Name scope within the brackets is the same as outside them.
Accumulators – Do,
if,
while
Controlling evaluation
Q for Mortals
§10.1.5 do