diff options
author | Yann Herklotz <ymherklotz@gmail.com> | 2017-03-29 18:04:24 +0100 |
---|---|---|
committer | Yann Herklotz <ymherklotz@gmail.com> | 2017-03-29 18:04:24 +0100 |
commit | ec1bb167b7d2cec582cd4856570e2b46d1e2a587 (patch) | |
tree | 04bbec8462ac45b6b358dd54d247f3ce22cc6bbb | |
parent | 68157133549cabe36ca3b6d5d145b85137f55389 (diff) | |
download | Compiler-ec1bb167b7d2cec582cd4856570e2b46d1e2a587.tar.gz Compiler-ec1bb167b7d2cec582cd4856570e2b46d1e2a587.zip |
working on documentation
-rw-r--r-- | 3-compiler-documentation.md | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/3-compiler-documentation.md b/3-compiler-documentation.md index b052904..f886217 100644 --- a/3-compiler-documentation.md +++ b/3-compiler-documentation.md @@ -105,11 +105,16 @@ _Give two strengths or capabilites of your binding approach, using 50 words or l ### Strength 1
-_50 words or less_
+The Bindings class stores the type of the identifier so that I can look
+it up and perform the right operation in the Expression class. Storing the type, however, also
+means that I do not have to store the type of an Expression, but can just deduce it.
### Strength 2
-_50 words or less_
+By only using two registers for operations, I do not have to worry about having no more
+registers available, and which registers will not be overwritten after a function call.
+The temporary expression result will always be in the current frame of the function even after
+a function call.
Limitations
-----------
@@ -118,11 +123,12 @@ _Give two limitations of your binding approach, using 50 words or less for each ### Limitation 1
-_50 words or less_
+As I am only using two registers to perform operations, I have to include loads and
+stores to access the temporary results of the operations. I also store results of an operation
+when I do not need the result anymore. This means that the code will run much slower.
### Limitation 2
-_50 words or less_
Reflection
|