summaryrefslogtreecommitdiff
path: root/examples/loop.m4
blob: 31761c965eee3776eb5fe1488f8cc39141f4a03c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
dnl Stress test for recursion algorithms.  Usage:
dnl m4 -Ipath/to/examples [-Doptions] loop.m4
dnl Options include:
dnl -Dalt - test with foreachq3 instead of foreachq2
dnl -Dlimit=<num> - set upper limit of sequence to <num>, default 1000
dnl -Dverbose - print the sequence to the screen, rather than discarding
dnl -Ddebug[=<code>] - execute <code> after forloop but before foreach
dnl -Dsleep=<num> - sleep for <num> seconds before exit, to allow time
dnl   to examine peak process memory usage
include(`forloop2.m4')dnl
include(`quote.m4')dnl
include(ifdef(`alt', ``foreachq3.m4'', ``foreachq2.m4''))dnl
ifdef(`limit', `', `define(`limit', `1000')')dnl
ifdef(`verbose', `', `divert(`-1')')dnl
ifdef(`debug', `', `define(`debug')')dnl
foreachq(`i', dquote(1forloop(`i', `2', limit, `,i'))debug, ` i')
ifdef(`sleep',`syscmd(`echo done>/dev/tty;sleep 'sleep)')dnl