1
0
mirror of https://github.com/catseye/SixtyPical.git synced 2024-11-26 14:49:15 +00:00
SixtyPical/tests/SixtyPical Syntax.md
2015-10-18 13:37:35 +01:00

1.3 KiB

Sixtypical Execution

This is a test suite, written in Falderal format, for the syntax of the Sixtypical language, disgregarding execution, static analysis, etc.

-> Functionality "Check syntax of Sixtypical program" is implemented by
-> shell command "bin/sixtypical %(test-body-file) && echo ok"

-> Tests for functionality "Check syntax of Sixtypical program"

Rudimentary program.

| routine main {
|     ld a, 0
|     add a, 1
| }
= ok

Syntax error

| routine foo (
|     ld a, 0
|     add a, 1
| )
? SyntaxError

Extern routines

| routine chrout
|   inputs a
|   trashes a
|   @ 65490
| 
| routine chrin
|   outputs a
|   trashes x
|   @ 65487
= ok

If with not

| routine foo {
|     ld y, 0
|     cmp y, 10
|     if not z {
|         inc y
|         cmp y, 10
|     }
| }
= ok

Repeat loop

| routine foo {
|     ld y, 0
|     repeat {
|         inc y
|         cmp y, 10
|     } until z
| }
= ok

"While" loop

| routine foo inputs y {
|     repeat {
|         cmp y, 10
|         if not z {
|             inc y
|         }
|     }
| }
= ok