zenlish 0.1.20 → 0.1.21
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -0
- data/README.md +6 -6
- data/lib/zenlish/lang/dictionary.rb +5 -3
- data/lib/zenlish/lang/zenlish_grammar.rb +31 -16
- data/lib/zenlish/lex/empty_lexicon_factory.rb +7 -5
- data/lib/zenlish/version.rb +1 -1
- data/lib/zenlish/wclasses/all_word_classes.rb +3 -1
- data/lib/zenlish/wclasses/distributive_determiner.rb +11 -0
- data/lib/zenlish/wclasses/fronting_quantifier.rb +9 -0
- data/lib/zenlish/wclasses/quantifier.rb +10 -0
- data/spec/zenlish/parser/zparser_spec.rb +56 -13
- metadata +5 -3
- data/lib/zenlish/wclasses/indefinite_quantifier.rb +0 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cae52bb88888ca9313517a2f37546bff739bf498f943e08daa456c75a3af10b7
|
4
|
+
data.tar.gz: e74feb8df8d191deba3d9dd95359eac3f723a1c864778ca35984bdc6a597f81d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef5dc8c9180d8dda4a834c863a5068c9a0ea86e42109e185f3599c71962e55b14a8bd04b868badcd1ae1f04f089d0636112dfa370d6cf2994d3fabf086b465e4
|
7
|
+
data.tar.gz: b2a408ef938db169d6c06d9606c4734f31ccdd1893507a676e6bead05e46c9cdee5adfd7c5de088d046a9dc7eb1f7c25fb3330dfb59dd81486180109b7c7e19a
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,20 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
+
## [0.1.21] - 2019-12-02
|
4
|
+
__Zenlish__ can parse all sentences in lesson 1, 2 and 3-A .. 3-C from
|
5
|
+
[Learn These Words First](http://learnthesewordsfirst.com/).
|
6
|
+
|
7
|
+
### Added
|
8
|
+
- Class `DistributiveDeterminer` to represent the words `each`, `every`, `either`, `neither`.
|
9
|
+
- Class `FrontingQuantifier` to represent the quantifiers `all` and `both`.
|
10
|
+
|
11
|
+
### Changed
|
12
|
+
- File `zparser_spec.rb`: tests include all sentences from lesson 1, 2, and 3-D (277 sentences in total).
|
13
|
+
- `ZenlishGrammar`: rewrite of rules for determiner syntax.
|
14
|
+
- Class `IndefiniteQuantifier` renamed to `Quantifier`
|
15
|
+
- File `dictionary.rb`: new entries in lexicon `each`, `use`.
|
16
|
+
- File `README.md` Updated the metrics table
|
17
|
+
|
3
18
|
## [0.1.20] - 2019-11-30
|
4
19
|
__Zenlish__ can parse all sentences in lesson 1, 2 and 3-A .. 3-C from
|
5
20
|
[Learn These Words First](http://learnthesewordsfirst.com/).
|
data/README.md
CHANGED
@@ -20,7 +20,7 @@ users with a language that is close enough to English.
|
|
20
20
|
### Project status
|
21
21
|
|
22
22
|
The project is still in inception. Currently, zenlish is able to parse all
|
23
|
-
sentences from lessons 1-A up to 3-
|
23
|
+
sentences from lessons 1-A up to 3-D. The parser is able to cope with syntactical
|
24
24
|
ambiguities generating parse forests instead of parse trees.
|
25
25
|
|
26
26
|
The intent is to deliver gem versions in small increments.
|
@@ -35,14 +35,14 @@ Over time, the zenlish gem will contain:
|
|
35
35
|
- A simplified ontology[TODO]
|
36
36
|
|
37
37
|
|
38
|
-
#### Some project metrics (v. 0.1.
|
38
|
+
#### Some project metrics (v. 0.1.21)
|
39
39
|
|Metric|Value|
|
40
40
|
|:-:|:-:|
|
41
|
-
| Number of lemmas in dictionary |
|
42
|
-
| [Coverage 100 commonest English words](https://en.wikipedia.org/wiki/Most_common_words_in_English) |
|
43
|
-
| Number of production rules in grammar |
|
41
|
+
| Number of lemmas in dictionary | 117 |
|
42
|
+
| [Coverage 100 commonest English words](https://en.wikipedia.org/wiki/Most_common_words_in_English) | 58% |
|
43
|
+
| Number of production rules in grammar | 170 |
|
44
44
|
| Number of lessons covered | 19 |
|
45
|
-
| Number of sentences in spec files |
|
45
|
+
| Number of sentences in spec files | 277 |
|
46
46
|
|
47
47
|
|
48
48
|
## Installation...
|
@@ -24,7 +24,7 @@ unless defined?(Zenlish::Lang::Dictionary)
|
|
24
24
|
add_entry('after', 'Adverb')
|
25
25
|
add_entry('after', 'SubordinatingConjunction')
|
26
26
|
add_entry('alive', 'Adjective')
|
27
|
-
add_entry('all', '
|
27
|
+
add_entry('all', 'FrontingQuantifier')
|
28
28
|
add_entry('and', 'Coordinator')
|
29
29
|
add_entry('animal', 'CommonNoun')
|
30
30
|
add_entry('another', 'Adjective')
|
@@ -47,6 +47,7 @@ unless defined?(Zenlish::Lang::Dictionary)
|
|
47
47
|
add_entry('die', 'RegularVerb')
|
48
48
|
add_entry('do', 'AuxiliaryDo')
|
49
49
|
add_entry('do', 'IrregularVerbDo')
|
50
|
+
add_entry('each', 'DistributiveDeterminer')
|
50
51
|
add_entry('false', 'Adjective')
|
51
52
|
add_entry('far', 'Adverb')
|
52
53
|
add_entry('far from', 'Preposition')
|
@@ -71,7 +72,7 @@ unless defined?(Zenlish::Lang::Dictionary)
|
|
71
72
|
add_entry('live', 'RegularVerb')
|
72
73
|
add_entry('living', 'Adjective')
|
73
74
|
add_entry('long', 'Adjective')
|
74
|
-
add_entry('many', '
|
75
|
+
add_entry('many', 'Quantifier')
|
75
76
|
add_entry('maybe', 'AdverbMaybe')
|
76
77
|
add_entry('me', 'PersonalPronoun')
|
77
78
|
add_entry('moment', 'CommonNoun')
|
@@ -102,7 +103,7 @@ unless defined?(Zenlish::Lang::Dictionary)
|
|
102
103
|
add_entry('short', 'Adjective')
|
103
104
|
add_entry('side', 'CommonNoun')
|
104
105
|
add_entry('small', 'Adjective')
|
105
|
-
add_entry('some', '
|
106
|
+
add_entry('some', 'Quantifier')
|
106
107
|
add_entry('someone', 'IndefinitePronoun')
|
107
108
|
add_entry('something', 'IndefinitePronoun')
|
108
109
|
add_entry('than', 'PrepositionThan')
|
@@ -124,6 +125,7 @@ unless defined?(Zenlish::Lang::Dictionary)
|
|
124
125
|
add_entry('true', 'Adjective')
|
125
126
|
add_entry('two', 'Cardinal')
|
126
127
|
add_entry('two', 'IndefinitePronoun')
|
128
|
+
add_entry('use', 'RegularVerb')
|
127
129
|
add_entry('very', 'DegreeAdverb')
|
128
130
|
add_entry('want', 'RegularVerbWant')
|
129
131
|
add_entry('what','ConjunctivePronoun')
|
@@ -147,30 +147,43 @@ builder = Rley::Syntax::GrammarBuilder.new do
|
|
147
147
|
#############
|
148
148
|
# DETERMINERS
|
149
149
|
#############
|
150
|
-
rule 'determiners' => '
|
150
|
+
rule 'determiners' => 'predeterminer_opt central_determiner_opt postdeterminers'
|
151
|
+
rule 'determiners' => 'partitive_determiner PrepositionOf main_determiner_opt postdeterminers'
|
151
152
|
|
152
|
-
# Pre-
|
153
|
-
rule '
|
154
|
-
rule '
|
155
|
-
rule '
|
156
|
-
|
157
|
-
|
158
|
-
|
153
|
+
# Pre-determiner
|
154
|
+
rule 'predeterminer_opt' => 'predeterminer'
|
155
|
+
rule 'predeterminer_opt' => []
|
156
|
+
rule 'predeterminer' => 'FrontingQuantifier' # all, both
|
157
|
+
# FOR_LATER 'predeterminer' => 'multipler' # twice, thrice, n times
|
158
|
+
# FOR_LATER 'predeterminer' => 'fraction' # half, third, ...
|
159
|
+
# FOR_LATER 'predeterminer' => 'intensifier' # what (exclamative), such, quite, rather
|
159
160
|
|
160
161
|
# Central determiners: article, demonstrative or possessive
|
161
|
-
rule '
|
162
|
-
rule '
|
163
|
-
|
164
|
-
rule '
|
162
|
+
rule 'central_determiner_opt' => 'main_determiner'
|
163
|
+
rule 'central_determiner_opt' => 'DistributiveDeterminer' # each, every, either, neither
|
164
|
+
# FOR_LATER 'central_determiner_opt' => 'InterrogativeDeterminer' # what, which, whose
|
165
|
+
rule 'central_determiner_opt' => []
|
166
|
+
rule 'main_determiner_opt' => 'main_determiner'
|
167
|
+
rule 'main_determiner_opt' => []
|
168
|
+
rule 'main_determiner' => 'article'
|
169
|
+
rule 'main_determiner' => 'DemonstrativeDeterminer' # 'this', .., that, these, those
|
170
|
+
rule 'main_determiner' => 'PossessiveDeterminer' # my, your, his, her, its, our, their
|
165
171
|
rule 'article' => 'DefiniteArticle' # 'the'
|
166
172
|
rule 'article' => 'IndefiniteArticle' # 'a/an', .., any, some, that, those,
|
167
|
-
rule 'demonstrative' => 'DemonstrativeDeterminer' # 'this', .., that, these, those
|
168
|
-
# possessive => possessive_determiner # ...my, your, his, her, its, our, their
|
169
173
|
|
170
|
-
#
|
171
|
-
|
174
|
+
# Post-determiners
|
175
|
+
# FOR_LATER 'postdeterminers' => 'ordinal_opt cardinal_opt other_quantifiers'
|
176
|
+
rule 'postdeterminers' => 'cardinal_opt other_quantifiers'
|
172
177
|
rule 'postdeterminers' => []
|
178
|
+
rule 'other_quantifiers' => 'other_quantifiers Quantifier'
|
179
|
+
rule 'other_quantifiers' => []
|
173
180
|
|
181
|
+
rule 'partitive_determiner' => 'predeterminer'
|
182
|
+
rule 'partitive_determiner' => 'DistributiveDeterminer'
|
183
|
+
# FOR_LATER 'partitive_determiner' => 'Ordinal'
|
184
|
+
# FOR_LATER 'partitive_determiner' => 'GeneralOrdinal'
|
185
|
+
rule 'partitive_determiner' => 'Cardinal'
|
186
|
+
rule 'partitive_determiner' => 'Quantifier'
|
174
187
|
|
175
188
|
#############
|
176
189
|
# VERB PHRASE
|
@@ -258,6 +271,8 @@ builder = Rley::Syntax::GrammarBuilder.new do
|
|
258
271
|
######################
|
259
272
|
# REMAINING RULES
|
260
273
|
######################
|
274
|
+
rule 'cardinal_opt' => 'Cardinal'
|
275
|
+
rule 'cardinal_opt' => []
|
261
276
|
rule 'numeral' => 'Cardinal'
|
262
277
|
end
|
263
278
|
|
@@ -24,15 +24,17 @@ module Zenlish
|
|
24
24
|
aLexicon.add_terminal(WClasses::Cardinal.new.freeze)
|
25
25
|
aLexicon.add_terminal(WClasses::CommonNoun.new.freeze)
|
26
26
|
aLexicon.add_terminal(WClasses::ComparativeParticle.new.freeze)
|
27
|
+
aLexicon.add_terminal(WClasses::ConjunctivePronoun.new.freeze)
|
27
28
|
aLexicon.add_terminal(WClasses::Coordinator.new.freeze)
|
28
29
|
aLexicon.add_terminal(WClasses::DefiniteArticle.new.freeze)
|
29
|
-
aLexicon.add_terminal(WClasses::ExistentialThere.new.freeze)
|
30
|
-
aLexicon.add_terminal(WClasses::IndefiniteArticle.new.freeze)
|
31
30
|
aLexicon.add_terminal(WClasses::DegreeAdverb.new.freeze)
|
32
31
|
aLexicon.add_terminal(WClasses::DemonstrativeDeterminer.new.freeze)
|
33
|
-
aLexicon.add_terminal(WClasses::ConjunctivePronoun.new.freeze)
|
34
32
|
aLexicon.add_terminal(WClasses::DemonstrativePronoun.new.freeze)
|
35
|
-
aLexicon.add_terminal(WClasses::
|
33
|
+
aLexicon.add_terminal(WClasses::DistributiveDeterminer.new.freeze)
|
34
|
+
aLexicon.add_terminal(WClasses::ExistentialThere.new.freeze)
|
35
|
+
aLexicon.add_terminal(WClasses::FrontingQuantifier.new.freeze)
|
36
|
+
aLexicon.add_terminal(WClasses::IndefiniteArticle.new.freeze)
|
37
|
+
aLexicon.add_terminal(WClasses::IndefinitePronoun.new.freeze)
|
36
38
|
aLexicon.add_terminal(WClasses::IrregularLinkingVerb.new.freeze)
|
37
39
|
aLexicon.add_terminal(WClasses::IrregularVerb.new.freeze)
|
38
40
|
aLexicon.add_terminal(WClasses::IrregularVerbBe.new.freeze)
|
@@ -48,11 +50,11 @@ module Zenlish
|
|
48
50
|
aLexicon.add_terminal(WClasses::Preposition.new.freeze)
|
49
51
|
aLexicon.add_terminal(WClasses::PrepositionOf.new.freeze)
|
50
52
|
aLexicon.add_terminal(WClasses::PrepositionThan.new.freeze)
|
53
|
+
aLexicon.add_terminal(WClasses::Quantifier.new.freeze)
|
51
54
|
aLexicon.add_terminal(WClasses::RegularVerb.new.freeze)
|
52
55
|
aLexicon.add_terminal(WClasses::RegularVerbWant.new.freeze)
|
53
56
|
aLexicon.add_terminal(WClasses::RelativePronoun.new.freeze)
|
54
57
|
aLexicon.add_terminal(WClasses::ProperNoun.new.freeze)
|
55
|
-
aLexicon.add_terminal(WClasses::IndefiniteQuantifier.new.freeze)
|
56
58
|
aLexicon.add_terminal(WClasses::SubordinatingConjunction.new.freeze)
|
57
59
|
end
|
58
60
|
|
data/lib/zenlish/version.rb
CHANGED
@@ -13,6 +13,7 @@ require_relative 'common_noun'
|
|
13
13
|
require_relative 'coordinator'
|
14
14
|
require_relative 'degree_adverb'
|
15
15
|
require_relative 'definite_article'
|
16
|
+
require_relative 'distributive_determiner'
|
16
17
|
require_relative 'existential_there'
|
17
18
|
require_relative 'pronoun'
|
18
19
|
require_relative 'proper_noun'
|
@@ -29,7 +30,6 @@ require_relative 'conjunctive_pronoun'
|
|
29
30
|
require_relative 'demonstrative_pronoun'
|
30
31
|
require_relative 'indefinite_article'
|
31
32
|
require_relative 'indefinite_pronoun'
|
32
|
-
require_relative 'indefinite_quantifier'
|
33
33
|
require_relative 'linking_adverb'
|
34
34
|
require_relative 'modal_verb_can'
|
35
35
|
require_relative 'personal_pronoun'
|
@@ -37,6 +37,8 @@ require_relative 'possessive_determiner'
|
|
37
37
|
require_relative 'preposition'
|
38
38
|
require_relative 'preposition_of'
|
39
39
|
require_relative 'preposition_than'
|
40
|
+
require_relative 'quantifier'
|
41
|
+
require_relative 'fronting_quantifier'
|
40
42
|
require_relative 'regular_verb'
|
41
43
|
require_relative 'regular_verb_want'
|
42
44
|
require_relative 'relative_pronoun'
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require_relative 'determiner'
|
2
|
+
|
3
|
+
module Zenlish
|
4
|
+
module WClasses
|
5
|
+
# Distributive determiner (aka distributive adjective) is a class of determiner,
|
6
|
+
# that is used to refer to individual members within a group or within a pair.
|
7
|
+
# Examples: each, every, either, neither.
|
8
|
+
class DistributiveDeterminer < Determiner
|
9
|
+
end # class
|
10
|
+
end # module
|
11
|
+
end # module
|
@@ -0,0 +1,10 @@
|
|
1
|
+
require_relative 'determiner'
|
2
|
+
|
3
|
+
module Zenlish
|
4
|
+
module WClasses
|
5
|
+
# Quantifiers are used to indicate the number or quantity of the noun under consideration.
|
6
|
+
# enough, few, little, many, more, most, much, none, several, some
|
7
|
+
class Quantifier < Determiner
|
8
|
+
end # class
|
9
|
+
end # module
|
10
|
+
end # module
|
@@ -59,6 +59,7 @@ module Zenlish
|
|
59
59
|
literal2var('body', 'body')
|
60
60
|
literal2var('but', 'but')
|
61
61
|
literal2var('can', 'can')
|
62
|
+
literal2var('cause', 'cause')
|
62
63
|
literal2var('cause', 'caused')
|
63
64
|
literal2var('cause', 'causes')
|
64
65
|
def did ; Lex::Literal.new('did', get_lexeme('do', WClasses::IrregularVerbDo), 0) ; end
|
@@ -69,6 +70,7 @@ module Zenlish
|
|
69
70
|
def do_aux ; Lex::Literal.new('do', get_lexeme('do', WClasses::AuxiliaryDo), 0) ; end
|
70
71
|
def does ; Lex::Literal.new('does', get_lexeme('do', WClasses::IrregularVerbDo), 0) ; end
|
71
72
|
def does_aux ; Lex::Literal.new('does', get_lexeme('do', WClasses::AuxiliaryDo), 0) ; end
|
73
|
+
literal2var('each', 'each', '_')
|
72
74
|
literal2var('false', 'false', '_')
|
73
75
|
literal2var('far', 'far')
|
74
76
|
literal2var('far from', 'far_from')
|
@@ -179,6 +181,8 @@ module Zenlish
|
|
179
181
|
literal2var('true', 'true', '_')
|
180
182
|
def two ; Lex::Literal.new('two', get_lexeme('two', WClasses::Cardinal), 0) ; end
|
181
183
|
def two_as_pronoun ; Lex::Literal.new('two', get_lexeme('two', WClasses::IndefinitePronoun), 0) ; end
|
184
|
+
literal2var('use', 'use')
|
185
|
+
literal2var('use', 'used')
|
182
186
|
literal2var('very', 'very')
|
183
187
|
literal2var('want', 'want')
|
184
188
|
literal2var('want', 'wants')
|
@@ -213,12 +217,12 @@ module Zenlish
|
|
213
217
|
end
|
214
218
|
|
215
219
|
context 'Producing parse tree or forest:' do
|
216
|
-
it 'should produce trees (for non ambiguous input)' do
|
217
|
-
# OK, non-ambiguous sentence: "Lisa sees Tony."
|
218
|
-
literals = [lisa, sees, tony, dot]
|
219
|
-
result_type = Rley::PTree::ParseTree
|
220
|
-
expect(subject.
|
221
|
-
end
|
220
|
+
# it 'should produce trees (for non ambiguous input)' do
|
221
|
+
# # OK, non-ambiguous sentence: "Lisa sees Tony."
|
222
|
+
# literals = [lisa, sees, tony, dot]
|
223
|
+
# result_type = Rley::PTree::ParseTree
|
224
|
+
# expect(subject.to_pforest(literals)).to be_kind_of(result_type)
|
225
|
+
# end
|
222
226
|
|
223
227
|
it 'should produce forest' do
|
224
228
|
# Sentence: "Lisa sees Tony."
|
@@ -234,29 +238,29 @@ module Zenlish
|
|
234
238
|
# in absence of a tokenizer, we create a sequence of literals by hand...
|
235
239
|
# prox_tony = ZProxy.new(tony)
|
236
240
|
literals = [tony, sees, lisa, dot]
|
237
|
-
expect { subject.
|
241
|
+
expect { subject.to_pforest(literals) }.not_to raise_error
|
238
242
|
|
239
243
|
# Sentence 1-02a: "Tony sees something."
|
240
244
|
sentence_literals = [tony, sees, something, dot]
|
241
|
-
expect { subject.
|
245
|
+
expect { subject.to_pforest(sentence_literals) }.not_to raise_error
|
242
246
|
|
243
247
|
# Sentence 1-02b: "Lisa sees something."
|
244
248
|
sentence_literals = [lisa, sees, something, dot]
|
245
|
-
expect { subject.
|
249
|
+
expect { subject.to_pforest(sentence_literals) }.not_to raise_error
|
246
250
|
|
247
251
|
# Sentence 1-03: "Tony sees this thing."
|
248
252
|
sentence_literals = [tony, sees, this, thing, dot]
|
249
|
-
expect { subject.
|
253
|
+
expect { subject.to_pforest(sentence_literals) }.not_to raise_error
|
250
254
|
|
251
255
|
# Sentence 1-04: "Lisa sees the other thing."
|
252
256
|
sentence_literals = [lisa, sees, the, other, thing, dot]
|
253
|
-
expect { subject.
|
257
|
+
expect { subject.to_pforest(sentence_literals) }.not_to raise_error
|
254
258
|
end
|
255
259
|
|
256
260
|
it 'should parse sample sentences from lesson 1-B' do
|
257
261
|
# Sentence 1-05a: "Lisa sees the same thing."
|
258
262
|
literals = [lisa, sees, the, same, thing, dot]
|
259
|
-
expect { subject.
|
263
|
+
expect { subject.to_pforest(literals) }.not_to raise_error
|
260
264
|
|
261
265
|
# Sentence 1-05b: "Lisa sees the same thing as Tony sees."
|
262
266
|
literals = [lisa, sees, the, same, thing, as, tony, sees, dot]
|
@@ -974,7 +978,7 @@ module Zenlish
|
|
974
978
|
|
975
979
|
# Sentence 2-28a definiendum "X dies."
|
976
980
|
literals = [x_as_noun, dies, dot]
|
977
|
-
expect { subject.
|
981
|
+
expect { subject.to_pforest(literals) }.not_to raise_error
|
978
982
|
|
979
983
|
# Sentence 2-28b definiens "Something happens to X in a moment.
|
980
984
|
# X is alive before this moment. X is not alive after this moment.
|
@@ -1262,8 +1266,47 @@ module Zenlish
|
|
1262
1266
|
]
|
1263
1267
|
expect { subject.to_pforest(literals) }.not_to raise_error
|
1264
1268
|
end
|
1269
|
+
|
1270
|
+
it 'should parse sample sentences from lesson 3-D' do
|
1271
|
+
# Sentence 3-13a definiendum: 'You use this thing.'
|
1272
|
+
literals = [you, use, this, thing, dot]
|
1273
|
+
expect { subject.to_pforest(literals) }.not_to raise_error
|
1274
|
+
|
1275
|
+
# Sentence 3-13b definiens: You do something with this thing
|
1276
|
+
# because you think this can cause something to happen that you want.
|
1277
|
+
# [I used something big to cause people far from here to see me.]
|
1278
|
+
literals = [ you, do_, something, with, this, thing, because, you,
|
1279
|
+
think, this_as_pronoun, can, cause, something, to, happen,
|
1280
|
+
that, you, want, dot,
|
1281
|
+
i_pronoun, used, something, big, to, cause, people, far, from,
|
1282
|
+
here_as_noun, to, see, me, dot
|
1283
|
+
]
|
1284
|
+
expect { subject.to_pforest(literals) }.not_to raise_error
|
1285
|
+
|
1286
|
+
# Sentence 3-14a definiendum: 'You know X about each of these things.'
|
1287
|
+
literals = [you, know, x_as_noun, about, each_, of, these, things, dot]
|
1288
|
+
expect { subject.to_pforest(literals) }.not_to raise_error
|
1289
|
+
end
|
1265
1290
|
=begin
|
1266
1291
|
TODO
|
1292
|
+
3-14. each, each of.
|
1293
|
+
[You know X about each of these things.] = There are two or more things. You think about all these things like this: If something is one of these things, then you know X about it.
|
1294
|
+
[Each person here said something to me.]
|
1295
|
+
|
1296
|
+
3-15. exist, exists, to exist, existing, existed.
|
1297
|
+
[Someplace an X exists.] = Someplace there is an X, or someplace an X is alive.
|
1298
|
+
[This kind of thing did not exist before this time.]
|
1299
|
+
|
1300
|
+
3-16. become, becomes, to become, becoming, became.
|
1301
|
+
[J became K.] = Something happened to J for some time. After this happened, K is something true you can know about J. But before this happened, K was not true.
|
1302
|
+
[These two animals were small before, but they became big.]
|
1303
|
+
|
1304
|
+
There are some animals here.
|
1305
|
+
Each of these animals was small when it existed a short time.
|
1306
|
+
After a long time, each of these animals __________.
|
1307
|
+
became big
|
1308
|
+
became small
|
1309
|
+
used many words
|
1267
1310
|
|
1268
1311
|
Lesson 2.C
|
1269
1312
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zenlish
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dimitri Geshef
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-12-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rley
|
@@ -114,10 +114,11 @@ files:
|
|
114
114
|
- lib/zenlish/wclasses/demonstrative_determiner.rb
|
115
115
|
- lib/zenlish/wclasses/demonstrative_pronoun.rb
|
116
116
|
- lib/zenlish/wclasses/determiner.rb
|
117
|
+
- lib/zenlish/wclasses/distributive_determiner.rb
|
117
118
|
- lib/zenlish/wclasses/existential_there.rb
|
119
|
+
- lib/zenlish/wclasses/fronting_quantifier.rb
|
118
120
|
- lib/zenlish/wclasses/indefinite_article.rb
|
119
121
|
- lib/zenlish/wclasses/indefinite_pronoun.rb
|
120
|
-
- lib/zenlish/wclasses/indefinite_quantifier.rb
|
121
122
|
- lib/zenlish/wclasses/irregular_linking_verb.rb
|
122
123
|
- lib/zenlish/wclasses/irregular_verb.rb
|
123
124
|
- lib/zenlish/wclasses/irregular_verb_be.rb
|
@@ -138,6 +139,7 @@ files:
|
|
138
139
|
- lib/zenlish/wclasses/preposition_than.rb
|
139
140
|
- lib/zenlish/wclasses/pronoun.rb
|
140
141
|
- lib/zenlish/wclasses/proper_noun.rb
|
142
|
+
- lib/zenlish/wclasses/quantifier.rb
|
141
143
|
- lib/zenlish/wclasses/regular_verb.rb
|
142
144
|
- lib/zenlish/wclasses/regular_verb_want.rb
|
143
145
|
- lib/zenlish/wclasses/relative_pronoun.rb
|