zenlish 0.1.06 → 0.1.07
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +16 -1
- data/README.md +11 -7
- data/lib/zenlish/lex/empty_lexicon_factory.rb +5 -1
- data/lib/zenlish/parser/zenlish_grammar.rb +5 -0
- data/lib/zenlish/version.rb +1 -1
- data/lib/zenlish/wclasses/all_word_classes.rb +2 -0
- data/lib/zenlish/wclasses/conjunctive_pronoun.rb +12 -0
- data/lib/zenlish/wclasses/irregular_verb_say.rb +9 -0
- data/spec/zenlish/parser/zparser_spec.rb +74 -16
- data/spec/zenlish/support/minimal_lexicon.rb +15 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ffba9137702021772a218a6fbd3e88b9e42094bd4ae67f88424af1aea08e02e
|
4
|
+
data.tar.gz: a5ea6452d625afcea4fd00c82c644fb76e5f274b5a88cb0b77e09587dbbb89d9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54c72b265c4ad2223c5f1bd95ff824dd1d54d556f9f4a517e9ffb6495179c8b07ee1aa33be360f0365225c4716b098b7b68ae0caae06e04e26cab002259ba7d0
|
7
|
+
data.tar.gz: ed998631f3a001a3fdca5e43ff9e8a1b09ee1f931698c5970736bee7f14f3cc68373804874bc674e1ae619eb992be69eccf522e23f3bcb336873e403fbba2090
|
data/CHANGELOG.md
CHANGED
@@ -1,11 +1,26 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
|
+
## [0.1.07] - 2019-10-21
|
4
|
+
__Zenlish__ can parse all sentences in lessons 1-A ... 1-H from
|
5
|
+
[Learn These Words First](http://learnthesewordsfirst.com/).
|
6
|
+
|
7
|
+
### Added
|
8
|
+
- Class `ConjunctivePronoun` to represent the conjunctive `what`.
|
9
|
+
- Class `IrregularVerbSay` to represent the verb `say`.
|
10
|
+
|
11
|
+
### Changed
|
12
|
+
- File `zparser_spec.rb`: tests include all sentences from lesson 1-H (70 sentences in total).
|
13
|
+
- `ZenlishGrammar`: added support for quoted text.
|
14
|
+
- File `minimal_lexicon.rb`: new entries in lexicon `about`, `false`, `hear`,
|
15
|
+
`say`, `to`, `true`, `what`, `word`.
|
16
|
+
- File `README.md` Updated the metrics table.
|
17
|
+
|
3
18
|
## [0.1.06] - 2019-10-20
|
4
19
|
__Zenlish__ can parse all sentences in lessons 1-A ... 1-G from
|
5
20
|
[Learn These Words First](http://learnthesewordsfirst.com/).
|
6
21
|
|
7
22
|
### Changed
|
8
|
-
- File `zparser_spec.rb`: tests include all sentences from lesson 1-
|
23
|
+
- File `zparser_spec.rb`: tests include all sentences from lesson 1-G (59 sentences in total).
|
9
24
|
- File `minimal_lexicon.rb`: new entries in lexicon `above`, `in`, `on`,
|
10
25
|
`place`, `side`.
|
11
26
|
- File `README.md` Updated the metrics table.
|
data/README.md
CHANGED
@@ -41,15 +41,19 @@ users with a language that is close enough to English.
|
|
41
41
|
|
42
42
|
### Project status
|
43
43
|
|
44
|
-
The project is still in inception.
|
45
|
-
|
44
|
+
The project is still in inception. Currently, zenlish is able to parse all
|
45
|
+
sentences of the first lesson.
|
46
|
+
|
47
|
+
The intent is to deliver gem versions in small increments.
|
48
|
+
|
49
|
+
#### Some project metrics (v. 0.1.07)
|
46
50
|
|Metric|Value|
|
47
51
|
|:-:|:-:|
|
48
|
-
| Number of lemmas in lexicon |
|
49
|
-
| [Coverage 100 commonest English words](https://en.wikipedia.org/wiki/Most_common_words_in_English) |
|
50
|
-
| Number of production rules in grammar |
|
51
|
-
| Number of lessons covered |
|
52
|
-
| Number of sentences in spec files |
|
52
|
+
| Number of lemmas in lexicon | 53 |
|
53
|
+
| [Coverage 100 commonest English words](https://en.wikipedia.org/wiki/Most_common_words_in_English) | 26 |
|
54
|
+
| Number of production rules in grammar | 74 |
|
55
|
+
| Number of lessons covered | 8 |
|
56
|
+
| Number of sentences in spec files | 70 |
|
53
57
|
|
54
58
|
|
55
59
|
### Roadmap
|
@@ -27,10 +27,12 @@ module Zenlish
|
|
27
27
|
aLexicon.add_terminal(WClasses::DefiniteArticle.new.freeze)
|
28
28
|
aLexicon.add_terminal(WClasses::DegreeAdverb.new.freeze)
|
29
29
|
aLexicon.add_terminal(WClasses::DemonstrativeDeterminer.new.freeze)
|
30
|
+
aLexicon.add_terminal(WClasses::ConjunctivePronoun.new.freeze)
|
30
31
|
aLexicon.add_terminal(WClasses::DemonstrativePronoun.new.freeze)
|
31
32
|
aLexicon.add_terminal(WClasses::IndefinitePronoun.new.freeze)
|
32
33
|
aLexicon.add_terminal(WClasses::IrregularVerb.new.freeze)
|
33
|
-
aLexicon.add_terminal(WClasses::IrregularVerbBe.new.freeze)
|
34
|
+
aLexicon.add_terminal(WClasses::IrregularVerbBe.new.freeze)
|
35
|
+
aLexicon.add_terminal(WClasses::IrregularVerbSay.new.freeze)
|
34
36
|
aLexicon.add_terminal(WClasses::LinkingAdverb.new.freeze)
|
35
37
|
aLexicon.add_terminal(WClasses::Preposition.new.freeze)
|
36
38
|
aLexicon.add_terminal(WClasses::PrepositionOf.new.freeze)
|
@@ -42,8 +44,10 @@ module Zenlish
|
|
42
44
|
end
|
43
45
|
|
44
46
|
def add_punctuation(aLexicon)
|
47
|
+
aLexicon.add_terminal(Rley::Syntax::Terminal.new('Colon'))
|
45
48
|
aLexicon.add_terminal(Rley::Syntax::Terminal.new('Comma'))
|
46
49
|
aLexicon.add_terminal(Rley::Syntax::Terminal.new('Period'))
|
50
|
+
aLexicon.add_terminal(Rley::Syntax::Terminal.new('Quote'))
|
47
51
|
end
|
48
52
|
end # module
|
49
53
|
end # module
|
@@ -19,11 +19,14 @@ builder = Rley::Syntax::GrammarBuilder.new do
|
|
19
19
|
rule 'affirmative_sentence' => 'AdverbThere IrregularVerbBe verb_be_complement'
|
20
20
|
rule 'affirmative_sentence' => 'numeral_of IrregularVerbBe verb_be_complement'
|
21
21
|
rule 'affirmative_sentence' => 'DemonstrativePronoun IrregularVerbBe verb_be_complement'
|
22
|
+
rule 'affirmative_sentence' => 'conjunctive_prefix IrregularVerbBe verb_be_complement'
|
22
23
|
rule 'negative_sentence' => 'noun_phrase negative_verb_phrase'
|
23
24
|
rule 'negative_sentence' => 'AdverbThere negative_verb_phrase'
|
24
25
|
rule 'negative_sentence' => 'numeral_of negative_verb_phrase'
|
26
|
+
rule 'negative_sentence' => 'conjunctive_prefix negative_verb_phrase'
|
25
27
|
rule 'conditional_statement' => 'condition_subordinate Comma LinkingAdverb declarative_simple_sentence'
|
26
28
|
rule 'condition_subordinate' => 'SubordinatingConjunction declarative_simple_sentence'
|
29
|
+
rule 'conjunctive_prefix' => 'ConjunctivePronoun noun_phrase verb_phrase'
|
27
30
|
rule 'noun_phrase' => 'simple_noun_phrase'
|
28
31
|
rule 'noun_phrase' => 'compound_noun_phrase'
|
29
32
|
rule 'simple_noun_phrase' => 'nominal'
|
@@ -56,6 +59,7 @@ builder = Rley::Syntax::GrammarBuilder.new do
|
|
56
59
|
rule 'verb_phrase' => 'verb_group'
|
57
60
|
rule 'verb_phrase' => 'verb_group verb_complement'
|
58
61
|
rule 'verb_phrase' => 'IrregularVerbBe verb_be_complement'
|
62
|
+
rule 'verb_phrase' => 'IrregularVerbSay Colon Quote affirmative_sentence Period Quote'
|
59
63
|
rule 'verb_complement' => 'noun_phrase'
|
60
64
|
rule 'verb_complement' => 'adverb_phrase'
|
61
65
|
rule 'verb_complement' => 'noun_phrase adverb_phrase'
|
@@ -72,6 +76,7 @@ builder = Rley::Syntax::GrammarBuilder.new do
|
|
72
76
|
rule 'lexical_verb' => 'RegularVerb'
|
73
77
|
rule 'lexical_verb' => 'IrregularVerb'
|
74
78
|
rule 'lexical_verb' => 'IrregularVerbBe'
|
79
|
+
rule 'lexical_verb' => 'IrregularVerbSay'
|
75
80
|
rule 'numeral' => 'Cardinal'
|
76
81
|
rule 'comparative_clause' => 'comparative_start noun_phrase'
|
77
82
|
rule 'comparative_clause' => 'comparative_start affirmative_sentence'
|
data/lib/zenlish/version.rb
CHANGED
@@ -15,8 +15,10 @@ require_relative 'pronoun'
|
|
15
15
|
require_relative 'proper_noun'
|
16
16
|
require_relative 'irregular_verb'
|
17
17
|
require_relative 'irregular_verb_be'
|
18
|
+
require_relative 'irregular_verb_say'
|
18
19
|
require_relative 'definite_article'
|
19
20
|
require_relative 'demonstrative_determiner'
|
21
|
+
require_relative 'conjunctive_pronoun'
|
20
22
|
require_relative 'demonstrative_pronoun'
|
21
23
|
require_relative 'indefinite_pronoun'
|
22
24
|
require_relative 'indefinite_quantifier'
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require_relative 'pronoun'
|
2
|
+
|
3
|
+
module Zenlish
|
4
|
+
module WClasses
|
5
|
+
# As a a relative pronoun, a conjunctive (connective) pronoun
|
6
|
+
# refers to some noun appearing before, but, in addition,
|
7
|
+
# it also joins two sentences together.
|
8
|
+
# Conjunctive pronouns are: who, what, whose, which.
|
9
|
+
class ConjunctivePronoun < Pronoun
|
10
|
+
end # class
|
11
|
+
end # module
|
12
|
+
end # module
|
@@ -30,6 +30,7 @@ module Zenlish
|
|
30
30
|
# In absence of a POS tagger/lemmatizer, we map input words
|
31
31
|
# to variables that themselves return Literal objects.
|
32
32
|
# For instance, next line will create a variable called 'alive'
|
33
|
+
literal2var('about', 'about')
|
33
34
|
literal2var('above', 'above')
|
34
35
|
literal2var('alive', 'alive')
|
35
36
|
literal2var('all', 'all')
|
@@ -40,8 +41,10 @@ module Zenlish
|
|
40
41
|
literal2var('as', 'as')
|
41
42
|
literal2var('of', 'of')
|
42
43
|
literal2var('do', 'does')
|
44
|
+
literal2var('false', 'false', '_')
|
43
45
|
literal2var('far', 'far')
|
44
46
|
literal2var('from', 'from')
|
47
|
+
literal2var('hear', 'hears')
|
45
48
|
literal2var('if', 'if', '_')
|
46
49
|
literal2var('in', 'in', '_')
|
47
50
|
literal2var('inside', 'inside')
|
@@ -66,6 +69,7 @@ module Zenlish
|
|
66
69
|
literal2var('small', 'small')
|
67
70
|
literal2var('small', 'smaller')
|
68
71
|
literal2var('some', 'some')
|
72
|
+
literal2var('say', 'says')
|
69
73
|
literal2var('see', 'see')
|
70
74
|
literal2var('see', 'sees')
|
71
75
|
literal2var('something', 'something')
|
@@ -80,12 +84,18 @@ module Zenlish
|
|
80
84
|
def this ; Lex::Literal.new('this', get_lexeme('this', WClasses::DemonstrativeDeterminer), 0) ; end
|
81
85
|
def this_as_pronoun ; Lex::Literal.new('this', get_lexeme('this', WClasses::DemonstrativePronoun), 0) ; end
|
82
86
|
literal2var('this one', 'this_one')
|
87
|
+
literal2var('to', 'to')
|
83
88
|
literal2var('Tony', 'Tony')
|
84
89
|
literal2var('touch', 'touching')
|
90
|
+
literal2var('true', 'true', '_')
|
85
91
|
literal2var('very', 'very')
|
92
|
+
literal2var('what', 'what')
|
93
|
+
literal2var('word', 'words')
|
86
94
|
|
95
|
+
def colon ; Lex::Literal.new(':', get_lexeme(':'), 0) ; end
|
87
96
|
def comma ; Lex::Literal.new(',', get_lexeme(','), 0) ; end
|
88
97
|
def dot ; Lex::Literal.new('.', get_lexeme('.'), 0) ; end
|
98
|
+
def quote ; Lex::Literal.new('"', get_lexeme('"'), 0) ; end
|
89
99
|
|
90
100
|
class ZProxy
|
91
101
|
attr_reader :literal
|
@@ -294,72 +304,120 @@ module Zenlish
|
|
294
304
|
literals = [tony, is_aux, touching, something, dot]
|
295
305
|
expect { subject.parse(literals) }.not_to raise_error
|
296
306
|
|
297
|
-
# Sentence 1-22b: Lisa is touching Tony."
|
307
|
+
# Sentence 1-22b: "Lisa is touching Tony."
|
298
308
|
literals = [lisa, is_aux, touching, tony, dot]
|
299
309
|
expect { subject.parse(literals) }.not_to raise_error
|
300
310
|
|
301
|
-
# Sentence 1-23a: Tony is far from Lisa."
|
311
|
+
# Sentence 1-23a: "Tony is far from Lisa."
|
302
312
|
literals = [tony, is, far, from, lisa, dot]
|
303
313
|
expect { subject.parse(literals) }.not_to raise_error
|
304
314
|
|
305
|
-
# Sentence 1-23b: Lisa is far from Tony."
|
315
|
+
# Sentence 1-23b: "Lisa is far from Tony."
|
306
316
|
literals = [lisa, is, far, from, tony, dot]
|
307
317
|
expect { subject.parse(literals) }.not_to raise_error
|
308
318
|
|
309
|
-
# Sentence 1-23c: Tony is not far from Lisa."
|
319
|
+
# Sentence 1-23c: "Tony is not far from Lisa."
|
310
320
|
literals = [tony, is, far, from, lisa, dot]
|
311
321
|
expect { subject.parse(literals) }.not_to raise_error
|
312
322
|
|
313
|
-
# Sentence 1-24: Tony is near to Lisa."
|
323
|
+
# Sentence 1-24: "Tony is near to Lisa."
|
314
324
|
literals = [tony, is, near_to, lisa, dot]
|
315
325
|
expect { subject.parse(literals) }.not_to raise_error
|
316
326
|
end
|
317
327
|
|
318
328
|
it 'should parse sample sentences from lesson 1-G' do
|
319
|
-
# Sentence 1-25a: Lisa is in this place."
|
329
|
+
# Sentence 1-25a: "Lisa is in this place."
|
320
330
|
literals = [lisa, is, in_, this, place, dot]
|
321
331
|
expect { subject.parse(literals) }.not_to raise_error
|
322
332
|
|
323
|
-
# Sentence 1-25b: There are two other things in this place."
|
333
|
+
# Sentence 1-25b: "There are two other things in this place."
|
324
334
|
literals = [there, are, two, other, things, in_, this, place, dot]
|
325
335
|
expect { subject.parse(literals) }.not_to raise_error
|
326
336
|
|
327
|
-
# Sentence 1-25c: Lisa is in the same place as these two other things."
|
337
|
+
# Sentence 1-25c: "Lisa is in the same place as these two other things."
|
328
338
|
literals = [lisa, is, in_, the, same, place, as, these, two, other, things, dot]
|
329
339
|
expect { subject.parse(literals) }.not_to raise_error
|
330
340
|
|
331
|
-
# Sentence 1-25d: Tony is not in this place."
|
341
|
+
# Sentence 1-25d: "Tony is not in this place."
|
332
342
|
literals = [tony, is, not_, in_, this, place, dot]
|
333
343
|
expect { subject.parse(literals) }.not_to raise_error
|
334
344
|
|
335
|
-
# Sentence 1-25e: Tony is in another place."
|
345
|
+
# Sentence 1-25e: "Tony is in another place."
|
336
346
|
literals = [tony, is, in_, another, place, dot]
|
337
347
|
expect { subject.parse(literals) }.not_to raise_error
|
338
348
|
|
339
|
-
# Sentence 1-26a: Lisa is inside this thing."
|
349
|
+
# Sentence 1-26a: "Lisa is inside this thing."
|
340
350
|
literals = [lisa, is, inside, this, thing, dot]
|
341
351
|
expect { subject.parse(literals) }.not_to raise_error
|
342
352
|
|
343
|
-
# Sentence 1-26b: Tony is above this thing."
|
353
|
+
# Sentence 1-26b: "Tony is above this thing."
|
344
354
|
literals = [tony, is, above, this, thing, dot]
|
345
355
|
expect { subject.parse(literals) }.not_to raise_error
|
346
356
|
|
347
|
-
# Sentence 1-26c: Tony is above lisa."
|
357
|
+
# Sentence 1-26c: "Tony is above lisa."
|
348
358
|
literals = [tony, is, above, lisa, dot]
|
349
359
|
expect { subject.parse(literals) }.not_to raise_error
|
350
360
|
|
351
|
-
# Sentence 1-27a: Tony is on one side of this thing."
|
361
|
+
# Sentence 1-27a: "Tony is on one side of this thing."
|
352
362
|
literals = [tony, is, on, one, side, of, this, thing, dot]
|
353
363
|
expect { subject.parse(literals) }.not_to raise_error
|
354
364
|
|
355
|
-
# Sentence 1-27b: Lisa is on the other side."
|
365
|
+
# Sentence 1-27b: "Lisa is on the other side."
|
356
366
|
literals = [lisa, is, on, the, other, side, dot]
|
357
367
|
expect { subject.parse(literals) }.not_to raise_error
|
358
368
|
|
359
|
-
# Sentence 1-27c: Tony is touching one side of this thing."
|
369
|
+
# Sentence 1-27c: "Tony is touching one side of this thing."
|
360
370
|
literals = [tony, is_aux, touching, one, side, of, this, thing, dot]
|
361
371
|
expect { subject.parse(literals) }.not_to raise_error
|
362
372
|
end
|
373
|
+
|
374
|
+
it 'should parse sample sentences from lesson 1-H' do
|
375
|
+
# Sentence 1-28: "Tony hears something."
|
376
|
+
literals = [tony, hears, something, dot]
|
377
|
+
expect { subject.parse(literals) }.not_to raise_error
|
378
|
+
|
379
|
+
# Sentence 1-29a: "Tony says something."
|
380
|
+
literals = [tony, says, something, dot]
|
381
|
+
expect { subject.parse(literals) }.not_to raise_error
|
382
|
+
|
383
|
+
# Sentence 1-29b: "Tony says something to Lisa."
|
384
|
+
literals = [tony, says, something, to, lisa, dot]
|
385
|
+
expect { subject.parse(literals) }.not_to raise_error
|
386
|
+
|
387
|
+
# Sentence 1-29c: "Tony says something about this living thing."
|
388
|
+
literals = [tony, says, something, about, this, living, thing, dot]
|
389
|
+
expect { subject.parse(literals) }.not_to raise_error
|
390
|
+
|
391
|
+
# Sentence 1-29d: 'Tony says: "This living thing is small."'
|
392
|
+
literals = [tony, says, colon, quote, this, living, thing, is, small, dot, quote, dot]
|
393
|
+
expect { subject.parse(literals) }.not_to raise_error
|
394
|
+
|
395
|
+
# Sentence 1-30a: "Tony says some words."
|
396
|
+
literals = [tony, says, some, words, dot]
|
397
|
+
expect { subject.parse(literals) }.not_to raise_error
|
398
|
+
|
399
|
+
# Sentence 1-30b: "Lisa says more words."
|
400
|
+
literals = [lisa, says, more, words, dot]
|
401
|
+
expect { subject.parse(literals) }.not_to raise_error
|
402
|
+
|
403
|
+
# Sentence 1-31a: 'Tony says: "There are two people inside this thing."'
|
404
|
+
literals = [tony, says, colon, quote, there, are, two, people, inside,
|
405
|
+
this, thing, dot, quote, dot]
|
406
|
+
expect { subject.parse(literals) }.not_to raise_error
|
407
|
+
|
408
|
+
# Sentence 1-31b: 'Lisa says: "There is one person inside this thing."'
|
409
|
+
literals = [lisa, says, colon, quote, there, is, one, person, inside,
|
410
|
+
this, thing, dot, quote, dot]
|
411
|
+
expect { subject.parse(literals) }.not_to raise_error
|
412
|
+
|
413
|
+
# Sentence 1-31c: "What Tony says is not true."
|
414
|
+
literals = [what, tony, says, is, not_, true_, dot]
|
415
|
+
expect { subject.parse(literals) }.not_to raise_error
|
416
|
+
|
417
|
+
# Sentence 1-31d: "What Lisa says is true."
|
418
|
+
literals = [what, lisa, says, is, true_, dot]
|
419
|
+
expect { subject.parse(literals) }.not_to raise_error
|
420
|
+
end
|
363
421
|
end # context
|
364
422
|
end # describe
|
365
423
|
end # module
|
@@ -21,7 +21,9 @@ preposition_than = $ZenlishLexicon.name2terminal['PrepositionThan']
|
|
21
21
|
regular_verb = $ZenlishLexicon.name2terminal['RegularVerb']
|
22
22
|
irregular_verb = $ZenlishLexicon.name2terminal['IrregularVerb']
|
23
23
|
irregular_verb_be = $ZenlishLexicon.name2terminal['IrregularVerbBe']
|
24
|
+
irregular_verb_say = $ZenlishLexicon.name2terminal['IrregularVerbSay']
|
24
25
|
indefinite_pronoun = $ZenlishLexicon.name2terminal['IndefinitePronoun']
|
26
|
+
conjunctive_pronoun = $ZenlishLexicon.name2terminal['ConjunctivePronoun']
|
25
27
|
demonstrative_pronoun = $ZenlishLexicon.name2terminal['DemonstrativePronoun']
|
26
28
|
demonstrative_determiner = $ZenlishLexicon.name2terminal['DemonstrativeDeterminer']
|
27
29
|
definite_article = $ZenlishLexicon.name2terminal['DefiniteArticle']
|
@@ -29,8 +31,11 @@ cardinal = $ZenlishLexicon.name2terminal['Cardinal']
|
|
29
31
|
comparative_particle = $ZenlishLexicon.name2terminal['ComparativeParticle']
|
30
32
|
indefinite_quantifier = $ZenlishLexicon.name2terminal['IndefiniteQuantifier']
|
31
33
|
subordinating_conjunction = $ZenlishLexicon.name2terminal['SubordinatingConjunction']
|
34
|
+
|
35
|
+
colon = $ZenlishLexicon.name2terminal['Colon']
|
32
36
|
comma = $ZenlishLexicon.name2terminal['Comma']
|
33
37
|
dot = $ZenlishLexicon.name2terminal['Period']
|
38
|
+
quote = $ZenlishLexicon.name2terminal['Quote']
|
34
39
|
|
35
40
|
def add_entry(aLemma, aWordClass)
|
36
41
|
entry = Zenlish::Lex::LexicalEntry.new(aLemma)
|
@@ -40,6 +45,7 @@ def add_entry(aLemma, aWordClass)
|
|
40
45
|
end
|
41
46
|
|
42
47
|
# Our minimalistic lexicon
|
48
|
+
add_entry('about', preposition)
|
43
49
|
add_entry('above', preposition)
|
44
50
|
add_entry('alive', adjective)
|
45
51
|
add_entry('all', indefinite_quantifier)
|
@@ -49,8 +55,10 @@ add_entry('be', auxiliary_be)
|
|
49
55
|
add_entry('be', irregular_verb_be)
|
50
56
|
add_entry('big', adjective)
|
51
57
|
add_entry('do', auxiliary_do)
|
58
|
+
add_entry('false', adjective)
|
52
59
|
add_entry('far', adverb)
|
53
60
|
add_entry('from', preposition)
|
61
|
+
add_entry('hear', irregular_verb)
|
54
62
|
add_entry('if', subordinating_conjunction)
|
55
63
|
add_entry('in', preposition)
|
56
64
|
add_entry('inside', preposition)
|
@@ -69,6 +77,7 @@ add_entry('people', common_noun)
|
|
69
77
|
add_entry('person', common_noun)
|
70
78
|
add_entry('place', common_noun)
|
71
79
|
add_entry('same', adjective)
|
80
|
+
add_entry('say', irregular_verb_say)
|
72
81
|
add_entry('see', irregular_verb)
|
73
82
|
add_entry('side', common_noun)
|
74
83
|
add_entry('small', adjective)
|
@@ -82,10 +91,16 @@ add_entry('thing', common_noun)
|
|
82
91
|
add_entry('this', demonstrative_determiner)
|
83
92
|
add_entry('this', demonstrative_pronoun)
|
84
93
|
add_entry('this one', demonstrative_pronoun)
|
94
|
+
add_entry('to', preposition)
|
85
95
|
add_entry('Tony', proper_noun)
|
86
96
|
add_entry('touch', regular_verb)
|
97
|
+
add_entry('true', adjective)
|
87
98
|
add_entry('two', cardinal)
|
88
99
|
add_entry('very', degree_adverb)
|
100
|
+
add_entry('what',conjunctive_pronoun)
|
101
|
+
add_entry('word', common_noun)
|
89
102
|
|
103
|
+
add_entry(':', colon)
|
90
104
|
add_entry(',', comma)
|
91
105
|
add_entry('.', dot)
|
106
|
+
add_entry('"', quote)
|
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.07
|
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-10-
|
11
|
+
date: 2019-10-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rley
|
@@ -106,6 +106,7 @@ files:
|
|
106
106
|
- lib/zenlish/wclasses/common_noun.rb
|
107
107
|
- lib/zenlish/wclasses/comparative_particle.rb
|
108
108
|
- lib/zenlish/wclasses/conjunction.rb
|
109
|
+
- lib/zenlish/wclasses/conjunctive_pronoun.rb
|
109
110
|
- lib/zenlish/wclasses/definite_article.rb
|
110
111
|
- lib/zenlish/wclasses/degree_adverb.rb
|
111
112
|
- lib/zenlish/wclasses/demonstrative_determiner.rb
|
@@ -115,6 +116,7 @@ files:
|
|
115
116
|
- lib/zenlish/wclasses/indefinite_quantifier.rb
|
116
117
|
- lib/zenlish/wclasses/irregular_verb.rb
|
117
118
|
- lib/zenlish/wclasses/irregular_verb_be.rb
|
119
|
+
- lib/zenlish/wclasses/irregular_verb_say.rb
|
118
120
|
- lib/zenlish/wclasses/lexical_verb.rb
|
119
121
|
- lib/zenlish/wclasses/linking_adverb.rb
|
120
122
|
- lib/zenlish/wclasses/noun.rb
|