fun sub r =
let
fun sub' ls =
case ls of
[] =>
| r :: ls =>
{[r.Num]} = {[r.Text]}
{sub' ls}
in
return
{sub' r.Lines}
end
fun subfrms n =
if n <= 0 then
else
{[n]}:
{subfrms (n - 1)}
fun form n = return
One more blank
{if n > 0 then
One fewer blank
else
}
fun main () = form 1