shithub: mc

Download patch

ref: cb2a50f6b3ada53a03cd211c79f920979edc0a25
parent: fc4588a48bbd08800d0127ce3ab748ee4dde1134
author: pranomostro <pranomestro@gmail.com>
date: Sat Oct 22 20:50:45 EDT 2016

Fixed a few typos.

--- a/doc/compiler.txt
+++ b/doc/compiler.txt
@@ -52,13 +52,13 @@
     function by function into simple operations that are relatively close to
     the machine. Sizes are fixed, and all loops, if statements, etc. are
     replaced with gotos. The next phase is a machine-independent optimizer,
-    which currenty does nothing other than simply folding trees. In the final
+    which currently does nothing other than simply folding trees. In the final
     phase, the instructions are selected and the registers are allocated.
 
     So, to recap, the phases are as follows:
 
         parse           Tokenize, parse, and analyze the source
-        flatten         Rewrite the complex nodes into simpe ones
+        flatten         Rewrite the complex nodes into simple ones
         opt             Optimize the flattened source trees
         gen             Generate the assembly code
 
@@ -126,7 +126,7 @@
         'parse/gram.h'. The lexer and parser code is the only code that
         depends on these token constants.
 
-        The lexer is initalized through 'tokinit(char *file)'. This function
+        The lexer is initialized through 'tokinit(char *file)'. This function
         will open the file passed in, read all the data from it in one go
         and set up the internal data for the tokenizer. The tokenizing is then
         done while the whole file is in memory, which means that this code
@@ -177,7 +177,7 @@
         'checkns()' function. Second, because we need to know the LHS of a
         member expression before we can check if the RHS is valid, and we
         are not guaranteed to know this at the first time that we see it, the
-        expression is assumed to be valid, and this asumption is verified in
+        expression is assumed to be valid, and this assumption is verified in
         a post-processing pass. Casts are validated in a deferred manner
         similarly.
 
@@ -225,7 +225,7 @@
         deserialized meaningfully.
 
         The format for this is only documented in the source, and is a
-        straighforward dump of the trees to memory. It is constantly shifting,
+        straightforward dump of the trees to memory. It is constantly shifting,
         and will not reliably work between compiler versions.
 
     2.6. Usefiles:
@@ -314,7 +314,7 @@
     5.2. Register Allocation:
 
         Register allocation is done via the algorithm described in "Iterated
-        Regster Coalescing" by Appel and George. As of the time of this
+        Register Coalescing" by Appel and George. As of the time of this
         writing, the register allocator does not yet implement overlapping
         register classes. This will be done as described in "A generalized
         algorithm for graph-coloring register allocation" by Smith, Ramsey,
--- a/doc/lang.txt
+++ b/doc/lang.txt
@@ -82,8 +82,8 @@
     These are fully described in section 3.2 of this manual.
 
     In the compiler, single semicolons (';') and newline (\x10)
-    characters are treated identically, and are therefore interchangable.
-    They will both be referred to "endline"s thoughout this manual.
+    characters are treated identically, and are therefore interchangeable.
+    They will both be referred to "endline"s throughout this manual.
 
 
 3. SYNTAX OVERVIEW:
@@ -104,7 +104,7 @@
             var:        Declares a variable value. This value may be
                         assigned to, copied from, and modified.
             generic:    Declares a specializable value. This value
-                        has the same restricitions as a const, but
+                        has the same restrictions as a const, but
                         taking its address is not defined. The type
                         parameters for a generic must be explicitly
                         named in the declaration in order for their
@@ -260,7 +260,7 @@
         Blocks are the "carriers of code" in Myrddin programs. They consist
         of series of expressions, typically ending with a ';;', although the
         function-level block ends at the function's '}', and in if
-        statemments, an 'elif' may terminate a block. They can contain any
+        statements, an 'elif' may terminate a block. They can contain any
         number of declarations, expressions, control constructs, and empty
         lines. Every control statement example below will (and, in fact,
         must) have a block attached to the control statement.
@@ -545,7 +545,7 @@
                 current contents, and a type to hold. They are declared by
                 placing the keyword 'union' before a list of tag-type pairs.
                 They may also omit the type, in which case, the tag is
-                suficient to determine which option was selected.
+                sufficient to determine which option was selected.
 
                     [int, int, char]            a tuple of 2 ints and a char
 
@@ -694,7 +694,7 @@
         The quoted form searches the local directory for "localpkg".  By
         convention, the package it imports does not match the name
         "localpkg", but instead is used as partial of the definition of the
-        importer's package. This is a confusing description.
+        importers package. This is a confusing description.
 
         A typical use of a quoted import is to allow splitting one package
         into multiple files. In order to support this behavior, if a package
@@ -783,7 +783,7 @@
         possible, and it is not well served by overly abstract or bulky code.
         The code written should be a readable description of an algorithm,
         aimed at conveying the essential operations in a linear and
-        straightforward fasion.
+        straightforward fashion.
 
         Write for humans, not machines. Write linearly, so that an algorithm
         can be understood with minimal function-chasing.