summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'content/fate_v1/instructions/_index.md')
-rw-r--r--content/fate_v1/instructions/_index.md48
1 files changed, 48 insertions, 0 deletions
diff --git a/content/fate_v1/instructions/_index.md b/content/fate_v1/instructions/_index.md
new file mode 100644
index 0000000..51066d1
--- /dev/null
+++ b/content/fate_v1/instructions/_index.md
@@ -0,0 +1,48 @@
+---
+title: Instructions
+---
+Instructions do not return values, but modify the memory in some way or
+interact with the interpreter. Computations are valid instructions, and will be
+automatically converted into `[TEXT]` to be displayed.
+
+### ASSERT
+{{< fatecode >}}(assert [BOOL] [TEXT]){{< /fatecode >}}
+
+Raises the exception `[TEXT]` to the interpreter if `[BOOL]` yields
+false.
+
+### DONE
+{{< fatecode >}}(done){{< /fatecode >}}
+
+Completes the execution of the current sequence.
+
+### END
+{{< fatecode >}}(end){{< /fatecode >}}
+
+Completes the execution of the script.
+
+### SET VALUE
+{{< fatecode >}}(set [REFERENCE] [COMPUTATION]){{< /fatecode >}}
+
+Gives the value `[COMPUTATION]` to `[REFERENCE]`.
+
+### VISIT SEQUENCE
+{{< fatecode >}}(visit {String} [C0 = COMPUTATION] ... [CN = COMPUTATION]){{< /fatecode >}}
+
+Visits the sequence named `{String}`, with `C0` ... `CN` as arguments. That
+sequence does not need to already have been defined. Visiting a sequence means
+that the execution of the current sequence continues once the visited sequence
+has completed.
+
+### JUMP TO SEQUENCE
+{{< fatecode >}}(jump_to {String} [C0 = COMPUTATION] ... [CN = COMPUTATION]){{< /fatecode >}}
+
+Jumps to the sequence named `{String}`, with `C0` ... `CN` as arguments. That
+sequence does not need to already have been defined. Jumping to a sequence means
+that the execution of the current sequence is replaced by that of the target
+sequence.
+
+### INSTRUCTION LIST
+{{< fatecode >}}([C0 = INSTRUCTION] ... [CN = INSTRUCTION]){{< /fatecode >}}
+
+Instruction corresponding to the execution of `[C0]` ... `[CN]` in order.