aboutsummaryrefslogtreecommitdiff
path: root/process
diff options
context:
space:
mode:
authorMiki Tebeka <miki.tebeka@gmail.com>2015-03-01 06:12:42 +0200
committerMiki Tebeka <miki.tebeka@gmail.com>2015-03-01 06:12:42 +0200
commit9fb199e2cb2cf44cd61c2a226193a70f6013aadc (patch)
tree325a2a8e33e3e8d18217d10854152cab82ac8b61 /process
parent49916f9402e30a5277146355be878b32ec30f46d (diff)
parent2cb013877c4ed41d245ce7c5525405c4833c503d (diff)
downloadmal-9fb199e2cb2cf44cd61c2a226193a70f6013aadc.tar.gz
mal-9fb199e2cb2cf44cd61c2a226193a70f6013aadc.zip
Merge branch 'master' of https://github.com/kanaka/mal
Diffstat (limited to 'process')
-rw-r--r--process/guide.md16
-rw-r--r--process/stepA_mal.gliffy (renamed from process/stepA_interop.gliffy)0
-rw-r--r--process/stepA_mal.png (renamed from process/stepA_interop.png)bin83168 -> 83168 bytes
-rw-r--r--process/stepA_mal.txt (renamed from process/stepA_interop.txt)2
4 files changed, 9 insertions, 9 deletions
diff --git a/process/guide.md b/process/guide.md
index 734dc32..6c6887c 100644
--- a/process/guide.md
+++ b/process/guide.md
@@ -15,7 +15,7 @@ So jump right in (er ... start the climb)!
You might already have a language in mind that you want to use.
Technically speaking, mal can be implemented in any sufficiently
-complete programming (i.e. Turing complete), however, there are a few
+complete programming language (i.e. Turing complete), however, there are a few
language features that can make the task MUCH easier. Here are some of
them in rough order of importance:
@@ -68,8 +68,8 @@ git clone git@github.com:YOUR_NAME/mal.git
cd mal
```
-* Make a new directory for your implementation. For example, if you
-* language is called "quux":
+* Make a new directory for your implementation. For example, if your
+language is called "quux":
```
mkdir quux
```
@@ -321,7 +321,7 @@ manually try some simple inputs:
* ` abc ` -> `abc`
* `(123 456)` -> `(123 456)`
* `( 123 456 789 ) ` -> `(123 456 789)`
- * `( + 2 (+ 3 4) ) ` -> `(+ 2 (* 3 4))`
+ * `( + 2 (* 3 4) ) ` -> `(+ 2 (* 3 4))`
To verify that your code is doing more than just eliminating extra
spaces (and not failing), you can instrument your `reader.qx` functions.
@@ -352,7 +352,7 @@ and each step will give progressively more bang for the buck.
* Add support for the other basic data type to your reader and printer
functions: string, nil, true, and false. These become mandatory at
step 4. When a string is read, a slash followed by a doublequote is
- translatd into a plain doublequote character and a slash followed by
+ translated into a plain doublequote character and a slash followed by
"n" is translated into a newline. To properly print a string (for
step 4 string functions), the `pr_str` function needs another
parameter called `print_readably`. When `print_readably` is true,
@@ -1151,15 +1151,15 @@ diff -urp ../process/step8_macros.txt ../process/step9_try.txt
### Step A: Interop and Self-hosting
-![stepA_interop architecture](stepA_interop.png)
+![stepA_mal architecture](stepA_mal.png)
Compare the pseudocode for step 9 and step A to get a basic idea of
the changes that will be made during this step:
```
-diff -urp ../process/step9_try.txt ../process/stepA_interop.txt
+diff -urp ../process/step9_try.txt ../process/stepA_mal.txt
```
-* Copy `step9_try.qx` to `stepA_interop.qx`.
+* Copy `step9_try.qx` to `stepA_mal.qx`.
* TODO/TBD
diff --git a/process/stepA_interop.gliffy b/process/stepA_mal.gliffy
index 7d4920f..7d4920f 100644
--- a/process/stepA_interop.gliffy
+++ b/process/stepA_mal.gliffy
diff --git a/process/stepA_interop.png b/process/stepA_mal.png
index 28dcb5b..28dcb5b 100644
--- a/process/stepA_interop.png
+++ b/process/stepA_mal.png
Binary files differ
diff --git a/process/stepA_interop.txt b/process/stepA_mal.txt
index 8d36f31..6c1e71e 100644
--- a/process/stepA_interop.txt
+++ b/process/stepA_mal.txt
@@ -1,4 +1,4 @@
---- stepA_interop -------------------------------
+--- stepA_mal -------------------------------
import types, reader, printer, env, core
READ(str): return reader.read_str(str)