Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions src/check/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ make your report more readable.
### Eliminating Newlines {: .exercise}

Write a visitor that deletes any text nodes from a document
that only contains newline characters.
that only contain newline characters.
Do you need to make any changes to `Visitor`,
or can you implement this using the class as it is?

Expand Down Expand Up @@ -297,6 +297,6 @@ Write a program that checks the ordering of headings in a page:
Modify the checking tool so that it reports
the full path for style violations when it finds a problem,
e.g.,
reports 'div.div.p`
reports `div.div.p`
(meaning "a paragraph in a div in another div")
instead of just `p`.
2 changes: 1 addition & 1 deletion src/interp/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ This lookup-and-call process is called [%g dynamic_dispatch "dynamic dispatch" %
since the program decides who to give work to on the fly.
It leads to a situation where `do` calls a function like `do_add`,
which in turn calls `do`,
which may then call `do_add` (or something other function)
which may then call `do_add` (or some other function)
and so on ([%f interp-recursive-evaluation %]).
Having a function call itself either directly or indirectly is called [%i "recursion" %],
which has a reputation for being hard to understand.
Expand Down
2 changes: 1 addition & 1 deletion src/layout/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ to draw objects correctly regardless of their order.)
%]

Our "screen" is a list of lists of characters,
with one inner list for each a row on the screen.
with one inner list for each row on the screen.
(We use lists rather than strings
so that we can overwrite characters in place.)

Expand Down
2 changes: 1 addition & 1 deletion src/template/ex_snippets.ht
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<p>Expect three items</p>
<ul>
<li z-loop="item:names">
<span z-var="prefix"><span z-var="item"/>
<span z-var="prefix"/><span z-var="item"/>
</li>
</ul>
</body>
Expand Down
2 changes: 1 addition & 1 deletion src/template/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ This approach is different from that of the visitor in [%x check %],
where we defined do-nothing methods so that derived classes could override
only the ones they needed.

The `Expander` class is specialization of `Visitor`
The `Expander` class is a specialization of `Visitor`
that uses an `Env` to keep track of variables.
It imports handlers for each type of special node—we will explore those in a moment—and
saves them along with a newly-created environment and a list of strings
Expand Down