Skip to content

Commit aa49445

Browse files
committed
Integrate feedback on Chapter 11
Issue marijnh#86
1 parent a0e132f commit aa49445

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

11_language.txt

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@ you do not aim too high) and very enlightening.
2828

2929
The main thing I want to show in this chapter is that there is no
3030
((magic)) involved in building your own language. I've often felt that
31-
some human invention was so immensely clever and complicated that I'd
32-
never be able to understand it. But with a little reading and
31+
some human inventions were so immensely clever and complicated that I'd
32+
never be able to understand them. But with a little reading and
3333
tinkering, such things often turn out to be quite mundane.
3434

3535
We will build a programming language called Egg. It will be a tiny, simple language, but one
@@ -79,12 +79,14 @@ The data structure the parser will use to describe a program will
7979
consist of expression objects, each of which has a `type` property indicating
8080
the kind of expression it is and other properties to describe its content.
8181

82-
Expresions of type `"value"` represent literal strings or numbers. Their `value`
83-
property contains the string or number value that they represent. Expressions of type
84-
`"word"` are used for identifiers (names). Their `name` property holds their content
85-
as a string. Finally, `"apply"` expressions represent applications. They have an `operator` property
86-
that refers to the expression that is being applied, and an `args` property that refers
87-
to an array of argument expressions.
82+
Expresions of type `"value"` represent literal strings or numbers.
83+
Their `value` property contains the string or number value that they
84+
represent. Expressions of type `"word"` are used for identifiers
85+
(names). Such objects have a `name` property that holds the
86+
identifier's name, as a string. Finally, `"apply"` expressions
87+
represent applications. They have an `operator` property that refers
88+
to the expression that is being applied, and an `args` property that
89+
refers to an array of argument expressions.
8890

8991
The `>(x, 5)` part of the program above would be represented like this:
9092

0 commit comments

Comments
 (0)