Hoi,
Ik probeer in Scheme een while loop te maken door middel van een macro, en ik heb op dit moment het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| (define-macro while
(lambda (test . body)
(list 'if test
(list 'begin
body
(list 'while test body)
)
)
)
)
(begin
(while (< 1 2) (display "Hello World") (display #\newline))
) |
Maar als ik dit vervolgens wil uitvoeren mbv mzscheme, dan gebeurd er niks, alsof er een oneindige loop is... nou klopt dat oneindige loop wel, alleen de macro zou elke keer "Hello World" moeten printen op het scherm, de cursor blijft echter knipperen en er lijkt niks te gebeuren. Als ik niet opnieuw de macro aanroep, dan werkt 't wel

Nou ja, hij print een keer "Hello World". Zie ik iets gigantisch over het hoofd??
"There are 10 kinds of people in the world, those who understand binary and those who don't" | Werkbak specs