ЦитироватьЦелей у проекта три.
1. Язык должен иметь грамматику, похожую на стандартную европейскую.2. Текст на этом языке должен быть похож на Интерлингву IALA, хотя бы отдалённо.
3. Текст долженбыстропарситься компьютером.
Цитата: basta от июля 4, 2019, 21:05Теперь смотрит и переводит, хотя и пословно. Общий смысл додумывайте сами, так сказать.
Парсер не смотрит в словарь, не понимает и не переводит значения слов.
Цитата: basta от мая 17, 2020, 17:44Обманул. Оказывается, всё очень просто. Определение класса можно оставить пустым (с ключевым словом pass), а потом расписать подробно в любом месте кода.
Чтобы сделать вложенные предложения возможными, нужно в определении сущ-го рекурсивно сослаться на определение предложения, в то время как (очевидно) определение предложения ссылается на определение сущ-го. В PyPEG все определения делаются через классы, а python не может задавать классы рекурсивно. Я пытался разобраться как это можно сделать через костыли, скажем декораторы или метаклассы, но не осилил.
Цитата: basta от мая 17, 2020, 17:44WR: un persone plus rapidel qua Piotre iu
IALA: un persona plus rapide que Piotr - некто быстрее, чем Пётр
<Text>
<Sentence>
<Arg0>
<NP0>
<Art>un</Art>
<N0>persone</N0>
<AdjP0>
<AdjP0i>
<ComparativeAdv>plus</ComparativeAdv>
<Adj0>rapidel</Adj0>
<ComparativeConj>qua</ComparativeConj>
<Sentence>
<Arg0>
<NP0>
<N0>Piotre</N0>
</NP0>
</Arg0>
</Sentence>
<SubsentenceEnd>iu</SubsentenceEnd>
</AdjP0i>
</AdjP0>
</NP0>
</Arg0>
</Sentence>
</Text>
<Text>
<Sentence>
<Arg0>
<NP0>
<N0>ille</N0>
</NP0>
</Arg0>
<VP>
<V>curret</V>
</VP>
<AdvP0>
<AdvP0i>
<ComparativeAdv>plus</ComparativeAdv>
<Adv0>rapidem</Adv0>
<ComparativeConj>qua</ComparativeConj>
<Sentence>
<Arg0>
<NP0>
<N0>ie</N0>
</NP0>
</Arg0>
<VP>
<V>imaginava</V>
</VP>
</Sentence>
<SubsentenceEnd>iu</SubsentenceEnd>
</AdvP0i>
</AdvP0>
</Sentence>
</Text>
Цитата: basta от февраля 19, 2020, 15:17Сделал и сделал хорошо. Поставил их в именную фразу. И чтобы не было горы вспомогательных слов, количественное числ-е поставил перед сущ-м, а порядковое после. Разница с интерлинвгой IALA в том, что там числ-е могут быть полноправными сущ-ми и прил-ми, а здесь они только в сопровождении сущ-го и строго до или после него, что на мой взгляд не беда, т.к. числительные в номинальном смысле употребляются реже и поэтому будут снабжены словами-затычками типа coses "вещи", veces "разы".
2. Составные числительные в любых ролях кроме существительного ("сто пятьдесят третий").
<Text>
<Sentence>
<Arg0>
<NP0>
<Art>le</Art>
<N0>anniversarie</N0>
<OrdinalNumeral>
<N_1_999_ord>
<N_1_9>duo</N_1_9>
<Num100>cento</Num100>
<N_10_90_ord>cinquantesime</N_10_90_ord>
</N_1_999_ord>
</OrdinalNumeral>
</NP0>
</Arg0>
</Sentence>
</Text>
<Text>
<Sentence>
<Arg0>
<NP0>
<Art>le</Art>
<N0>millepedes</N0>
</NP0>
</Arg0>
<VP>
<PresentPerfectAuxV>ha</PresentPerfectAuxV>
<PtcpPast0>perdita</PtcpPast0>
</VP>
<Arg0>
<NP0>
<CardinalNumeral>
<Natural>
<N_0_999>
<N_1_999>
<N_1_9>quatro</N_1_9>
<Num100>cento</Num100>
<N_10_90>novanta</N_10_90>
<N_1_9>nove</N_1_9>
</N_1_999>
</N_0_999>
</Natural>
</CardinalNumeral>
<N0>pedes</N0>
</NP0>
</Arg0>
</Sentence>
</Text>
Цитата: basta от февраля 19, 2020, 15:17Чтобы сделать вложенные предложения возможными, нужно в определении сущ-го рекурсивно сослаться на определение предложения, в то время как (очевидно) определение предложения ссылается на определение сущ-го. В PyPEG все определения делаются через классы, а python не может задавать классы рекурсивно. Я пытался разобраться как это можно сделать через костыли, скажем декораторы или метаклассы, но не осилил. Так что вложенных предложений не будет, по крайней мере в этой реализации. Известно, что PEG.js ограниченно поддерживает рекурсивные определения. Т.е. они обязательно должны ветвиться вправо. Не невозможно, но дофига делов.
3. Подчинённые предложения, вложенные в главное ("дом, в котором живёт Иван, расположен на краю деревни").
Цитата: basta от февраля 19, 2020, 15:17Делается легко, если считать слово чем предлогом. Примерное значение у такого предлога "по сравнению с". Не очень по-европейски, конечно, но в японском именно так и делается частицей ёри/ёримо.
1. Сравнительные обороты в прилагательных и наречиях ("быстрее, чем Пётр").
<Text>
<Sentence>
<Arg0>
<NP0>
<Art>un</Art>
<N0>persone</N0>
<AdjP0>
<Adj0>rapidel</Adj0>
<AdvP1>
<Adv1>plusim</Adv1>
<AdvP2>
<Prep>qua</Prep>
<Arg2>
<NP2>
<N2>piotro</N2>
</NP2>
</Arg2>
</AdvP2>
</AdvP1>
</AdjP0>
</NP0>
</Arg0>
</Sentence>
</Text>
<Text>
<Sentence>
<Arg0>
<NP0>
<N0>patre</N0>
<AdjP0>
<Adj0>nostrel</Adj0>
</AdjP0>
</NP0>
</Arg0>
</Sentence>
<ConjSent>e</ConjSent>
<Sentence>
<Arg0>
<NP0>
<N0>quie</N0>
</NP0>
</Arg0>
<VP>
<V>es</V>
</VP>
<AdvP0>
<Prep>in</Prep>
<Arg0>
<Art>le</Art>
<NP0>
<N0>celes</N0>
</NP0>
</Arg0>
</AdvP0>
</Sentence>
<ConjSent>que</ConjSent>
<Sentence>
<Arg0>
<NP0>
<N0>nomine</N0>
<AdjP0>
<Adj0>tuel</Adj0>
</AdjP0>
</NP0>
</Arg0>
<VP>
<ImperativePassiveAuxV>sia</ImperativePassiveAuxV>
<PtcpPast0>sanctificata</PtcpPast0>
</VP>
</Sentence>
<ConjSent>que</ConjSent>
<Sentence>
<Arg0>
<NP0>
<N0>regne</N0>
<AdjP0>
<Adj0>tuel</Adj0>
</AdjP0>
</NP0>
</Arg0>
<VP>
<V>venit</V>
</VP>
</Sentence>
<ConjSent>que</ConjSent>
<Sentence>
<Arg0>
<NP0>
<N0>voluntate</N0>
<AdjP0>
<Adj0>tuel</Adj0>
</AdjP0>
</NP0>
</Arg0>
<VP>
<ImperativePassiveAuxV>sia</ImperativePassiveAuxV>
<PtcpPast0>facita</PtcpPast0>
</VP>
<AdvP0>
<Prep>in</Prep>
<Arg0>
<Art>le</Art>
<NP0>
<N0>cele</N0>
<AdvP1>
<Adv1>comim</Adv1>
</AdvP1>
</NP0>
</Arg0>
<ConjAdv0>ezem</ConjAdv0>
<Prep>super</Prep>
<Arg0>
<Art>le</Art>
<NP0>
<N0>terre</N0>
<AdvP1>
<Adv1>etiamim</Adv1>
</AdvP1>
</NP0>
</Arg0>
</AdvP0>
</Sentence>
<ConjSent>e</ConjSent>
<Sentence>
<VP>
<V>dan</V>
</VP>
<Arg0>
<NP0>
<N0>nose</N0>
</NP0>
</Arg0>
<AdvP0>
<Adv0>hodiem</Adv0>
</AdvP0>
<Arg0>
<NP0>
<N0>pane</N0>
<AdjP0>
<Adj0>nostrel</Adj0>
<Adj0>quotidianel</Adj0>
</AdjP0>
</NP0>
</Arg0>
</Sentence>
<ConjSent>e</ConjSent>
<Sentence>
<VP>
<V>pardonan</V>
</VP>
<AdvP0>
<Prep>a</Prep>
<Arg0>
<NP0>
<N0>nose</N0>
</NP0>
</Arg0>
</AdvP0>
<Arg0>
<NP0>
<N0>debites</N0>
<AdjP0>
<Adj0>nostrel</Adj0>
</AdjP0>
</NP0>
</Arg0>
</Sentence>
<ConjSent>e</ConjSent>
<Sentence>
<AdvP0>
<Adv0>comem</Adv0>
<AdvP1>
<Adv1>etiamim</Adv1>
</AdvP1>
</AdvP0>
<Arg0>
<NP0>
<N0>nose</N0>
</NP0>
</Arg0>
<Arg0>
<NP0>
<N0>lose</N0>
</NP0>
</Arg0>
<VP>
<V>pardonat</V>
</VP>
<AdvP0>
<Prep>a</Prep>
<Arg0>
<NP0>
<N0>debitores</N0>
<AdjP0>
<Adj0>nostrel</Adj0>
</AdjP0>
</NP0>
</Arg0>
</AdvP0>
</Sentence>
<ConjSent>e</ConjSent>
<Sentence>
<VP>
<Negation>non</Negation>
<V>inducen</V>
</VP>
<Arg0>
<NP0>
<N0>nose</N0>
</NP0>
</Arg0>
<AdvP0>
<Prep>in</Prep>
<Arg0>
<NP0>
<N0>tentatione</N0>
</NP0>
</Arg0>
</AdvP0>
</Sentence>
<ConjSent>sed</ConjSent>
<Sentence>
<VP>
<V>liberan</V>
</VP>
<Arg0>
<NP0>
<N0>nose</N0>
</NP0>
</Arg0>
<AdvP0>
<Prep>de</Prep>
<Arg0>
<Art>le</Art>
<NP0>
<N0>male</N0>
</NP0>
</Arg0>
</AdvP0>
</Sentence>
<ConjSent>e</ConjSent>
<Sentence>
<Interj>amen</Interj>
</Sentence>
</Text>
active | IALA | wild raisin | passive | IALA | wild raisin |
Imperative | crea! vide! audi! | crean viden audin | Imperative | sia create sia vidite sia audite | sia creata sia vidita sia audita |
Present | io crea io vide io audi | ie creat ie videt ie audit | Present | io es create io es vidite io es audite | ie es creata ie es vidita ie es audita |
Present perfect | io ha create io ha vidite io ha audite | ie ha creata ie ha vidita ie ha audita | Present perfect | io ha essite create io ha essite vidite io ha essite audite | ie ha essita creata ie ha essita vidita ie ha essita audita |
Imperfect | io creava io videva io audiva | ie creava ie videva ie audiva | Imperfect | io esseva create io esseva vidite io esseva audite | ie esseva creata ie esseva vidita ie esseva audita |
Past perfect | io habeva create io habeva vidite io habeva audite | ie habeva creata ie habeva vidita ie habeva audita | Past perfect | io habeva essite create io habeva essite vidite io habeva essite audite | ie habeva essita creata ie habeva essita vidita ie habeva essita audita |
Future | io creara io videra io audira | ie creara ie videra ie audira | Future | io essera create io essera vidite io essera audite | ie essera creata ie essera vidita ie essera audita |
Future perfect | io habera create io habera vidite io habera audite | ie habera creata ie habera vidita ie habera audita | Future perfect | io habera essite create io habera essite vidite io habera essite audite | ie habera essita creata ie habera essita vidita ie habera essita audita |
Conditional | io crearea io viderea io audirea | ie crearea ie viderea ie audirea | Conditional | io esserea create io esserea vidite io esserea audite | ie esserea creata ie esserea vidita ie esserea audita |
Conditional perfect | io haberea create io haberea vidite io haberea audite | ie haberea creata ie haberea vidita ie haberea audita | Conditional perfect | io haberea essite create io haberea essite vidite io haberea essite audite | ie haberea essita creata ie haberea essita vidita ie haberea essita audita |
IALA | wild raisin | |||||
level=0 | 1 | 2 | 3 | 4 | ||
n sg | pan | pane | pani | pano | panu | pania |
n pl | panes | panes | panis | panos | panus | panias |
app sg | pan | panef | panif | panof | panuf | paniaf |
app pl | panes | panefs | panifs | panofs | panufs | paniafs |
adj | celere | celerel | celeril | celerol | celerul | celerial |
adv | celeremente | celerem | celerim | celerom | celerum | celeriam |
inf a | crear | crear | creavur | creadur | creajur | creagur |
inf e | vider | vider | videvur | videdur | videjur | videgur |
inf i | audir | audir | audivur | audidur | audijur | audigur |
ptcp a pres | creante | creanta | creavunta | creadunta | creajunta | creagunta |
ptcp a past | create | creata | creavuta | creaduta | creajuta | creaguta |
ptcp e pres | vidente | videnta | videvunta | videdunta | videjunta | videgunta |
ptcp e past | vidite | vidita | vidivuta | vididuta | vidijuta | vidiguta |
ptcp i pres | audiente | audienta | audievunta | audiedunta | audiejunta | audiegunta |
ptcp i past | audite | audita | audivuta | audiduta | audijuta | audiguta |
0 | 1 | 2 | 3 | 4 | |
conj_arg | eze, oze | ezi, ozi | ezo, ozo | ezu, ozu | ezia, ozia |
conj_adj | ezel, ozel | ezil, ozil, | ezol, ozol | ezul, ozul | ezial, ozial |
conj_adv | ezem, ozem | ezim, ozim | ezom, ozom | ezum, ozum | eziam, oziam |
conj_ptcp | ezet, ozet | ezit, ozit | ezot, ozot | ezut, ozut | eziat, oziat |
Patre nostre, | patre nostrel |
qui es in le celos, | e quie es in le celes |
que tu nomine sia sanctificate; | que nomine tuel sia sanctificata |
que tu regno veni; | que regne tuel venit |
que tu voluntate sia facite como in le celo, etiam super le terra. | que voluntate tuel sia facita in le cele comim ezem super le terre etiamim |
Da nos hodie nostre pan quotidian, | e dan nose hodiem pane nostrel quotidianel |
e pardona a nos nostre debitas | e pardonan a nose debites nostrel |
como etiam nos los pardona a nostre debitores. | e comem etiamim nose lose pardonat a debitores nostrel |
E non induce nos in tentation, | e non inducen nose in tentatione |
sed libera nos del mal. | sed liberan nose de le male |
Amen. | e amen |
[text]
[sentence]
[argument, level=0]
[noun phrase, level=0]
patre: noun, singular, level=0
[adjective phrase, level=0]
nostrel: adjective, singular, level=0
[appositive phrase, level=0]
cec: apposition, singular, level=0
[prepositional phrase, level=1]
in: preposition
[argument, level=2]
le: article
[noun phrase, level=2]
celos: noun, plural, level=2
tet: verb, present
e: conjunction for sentence
[sentence]
[argument, level=0]
[noun phrase, level=0]
nomine: noun, singular, level=0
[adjective phrase, level=0]
tuel: adjective, singular, level=0
sanctificen: verb, imperative
e: conjunction for sentence
[sentence]
[argument, level=0]
[noun phrase, level=0]
regne: noun, singular, level=0
[adjective phrase, level=0]
tuel: adjective, singular, level=0
venen: verb, imperative
e: conjunction for sentence
[sentence]
[argument, level=0]
[noun phrase, level=0]
voluntate: noun, singular, level=0
[adjective phrase, level=0]
tuel: adjective, singular, level=0
facen: verb, imperative
[prepositional phrase, level=0]
in: preposition
[argument, level=1]
le: article
[noun phrase, level=1]
celi: noun, singular, level=1
[adverb phrase, level=2]
comom: adverb, level=2
eem: conjunction for adverb, level=0
[prepositional phrase, level=0]
super: preposition
[argument, level=1]
le: article
[noun phrase, level=1]
terri: noun, singular, level=1
[adverb phrase, level=2]
etiamom: adverb, level=2
e: conjunction for sentence
[sentence]
[adverb phrase, level=0]
hodiem: adverb, level=0
[argument, level=0]
[noun phrase, level=0]
te: noun, singular, level=0
daen: verb, imperative
[prepositional phrase, level=0]
a: preposition
[argument, level=1]
[noun phrase, level=1]
nosi: noun, singular, level=1
[argument, level=0]
[noun phrase, level=0]
pane: noun, singular, level=0
[adjective phrase, level=0]
nostrel: adjective, singular, level=0
[adjective phrase, level=0]
quotidianel: adjective, singular, level=0
e: conjunction for sentence
[sentence]
[argument, level=0]
[noun phrase, level=0]
te: noun, singular, level=0
pardonen: verb, imperative
[prepositional phrase, level=0]
a: preposition
[argument, level=1]
[noun phrase, level=1]
nosi: noun, singular, level=1
[argument, level=0]
[noun phrase, level=0]
debites: noun, plural, level=0
[adjective phrase, level=0]
nostrel: adjective, singular, level=0
e: conjunction for sentence
[sentence]
[adverb phrase, level=0]
comem: adverb, level=0
[adverb phrase, level=1]
etiamim: adverb, level=1
[argument, level=0]
[noun phrase, level=0]
nose: noun, singular, level=0
pardonet: verb, present
[prepositional phrase, level=0]
a: preposition
[argument, level=1]
[noun phrase, level=1]
debitoris: noun, plural, level=1
[adjective phrase, level=1]
nostril: adjective, singular, level=1
e: conjunction for sentence
[sentence]
[adverb phrase, level=0]
nonem: adverb, level=0
[argument, level=0]
[noun phrase, level=0]
te: noun, singular, level=0
[argument, level=0]
[noun phrase, level=0]
nose: noun, singular, level=0
inducen: verb, imperative
[prepositional phrase, level=0]
in: preposition
[argument, level=1]
[noun phrase, level=1]
tentationi: noun, singular, level=1
sed: conjunction for sentence
[sentence]
[argument, level=0]
[noun phrase, level=0]
te: noun, singular, level=0
[argument, level=0]
[noun phrase, level=0]
nose: noun, singular, level=0
liberen: verb, imperative
[prepositional phrase, level=0]
de: preposition
[argument, level=1]
le: article
[noun phrase, level=1]
mali: noun, singular, level=1
e: conjunction for sentence
[sentence]
[argument, level=0]
[noun phrase, level=0]
one: noun, singular, level=0
amenet: verb, present
Страница создана за 0.091 сек. Запросов: 24.