35 lines
632 B
Plaintext
35 lines
632 B
Plaintext
fun for -> var, test, body, return # define a for loop using recursion
|
|
(
|
|
test(var) -> continue
|
|
if (continue) ->
|
|
(
|
|
body(var) -> var
|
|
for (var, test, body, return)
|
|
)
|
|
|
|
|
return(var)
|
|
)
|
|
| for
|
|
|
|
fun upToFive (-> index, return) '<='(index, 5, return) | upToFive
|
|
|
|
for (1, upToFive) -> index, return
|
|
(
|
|
fun countTheStars -> stars, return
|
|
(
|
|
'count'(stars) -> n
|
|
'<'(n, index, return) # continue until n = index
|
|
)
|
|
| countTheStars
|
|
|
|
for ("*", countTheStars) -> prefix, return
|
|
'str'(prefix, "*", return)
|
|
| stars
|
|
|
|
println(stars) ->
|
|
|
|
'inc'(index, return)
|
|
)
|
|
| result
|
|
exit()
|