Ostatnio rozpocząłem prace nad całkiem nowym językiem programowania, o nazwie Mercury. Program Hello, world. jest w już stanie działać na aktualnej wersji interpretatora, i wygląda on następująco:
ECHO Hello, world.
Stałych, używa się w ten sposób:
CONST X IS 10
ECHO X=%X
Zmienne wypisuje się trochę inaczej:
SET Y TO 20
ECHO Y=$Y
Komentarze wyglądają dokładnie tak jak w Pythonie:
#a comment
Jest jeszcze komenda zatrzymująca program:
STOP
Operacje matematyczne:
SET A TO 1
CONST B IS 7
ADD 30 TO A
SUBTRACT %B FROM A
MULTIPLE A BY 8
DIVIDE A BY 4
Instrukcje warunkowe:
CONST A IS 4
IF %A EQU 4
ECHO Okay.
ENDI
Pętle:
REPEAT 5
ECHO ....5 times...
ENDR
#albo:
WHILE $N NEQ 5
ECHO only one time
SET N TO 5
ENDW
Inkrementacja/dekrementacja:
Nowy przykład współdziałania aktualnych instrukcji:
REPEAT 10
SET X TO $.
#zmienna $. jest licznikiem pętli
INC X
ECHO $X
IF $X EQU 5
#dostępne są jeszcze NEQ, LSS, GTR, LEQ, GEQ i NOT (negacja wyrażenia). Reszta operatorów logicznych będzie zaimplementowana do jutra.
ECHO Halfway done!
ENDI
ENDR
STOP
Screenshot:
Przykład Hello world nadal zostaje