mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-24 03:52:50 -06:00
Russian parches by MG_UR
This commit is contained in:
@@ -8,402 +8,391 @@ flags
|
||||
optimize=values ;
|
||||
coding=utf8 ;
|
||||
lin
|
||||
add_V3 = mkV3 (regV imperfective first "складыва" "ю" "складывал" "складывай" "складывать" ) "" "в" accusative accusative;
|
||||
airplane_N = nTelefon "самолет" ;
|
||||
answer_V2S = dirV2 (regV imperfective first "отвеча" "ю" "отвечал" "отвечай" "отвечать" );
|
||||
already_Adv = mkAdv "уже" ;
|
||||
animal_N = nZhivotnoe "животн" ;
|
||||
answer_V2S = dirV2 (regV imperfective first "отвеча" "ю" "отвечал" "отвечай" "отвечать" );
|
||||
apartment_N = nMashina "квартир" ;
|
||||
apple_N = nChislo "яблок" ;
|
||||
art_N = nChislo "искусств" ;
|
||||
ask_V2Q = dirV2 (regV imperfective first "спрашива" "ю" "спрашивал" "спрашивай" "спрашивать") ;
|
||||
-- apple_N = nChislo "яблок" ; -- +++ MG_UR: wrong! +++
|
||||
-- art_N = nChislo "искусств" ; -- +++ MG_UR: wrong! +++
|
||||
art_N = nSlovo "искусств" ; -- +++ MG_UR: added +++
|
||||
ashes_N = nPepel "пеп" ;
|
||||
ask_V2Q = dirV2 (regV imperfective first "спрашива" "ю" "спрашивал" "спрашивай" "спрашивать") ;
|
||||
baby_N = nMalush "малыш";
|
||||
bad_A = AKakoj_Nibud "плох" "" "хуже";
|
||||
back_N = nMashina "спин" ;
|
||||
bad_A = AKakoj_Nibud "плох" "" "хуже";
|
||||
bank_N = nBank "банк" ;
|
||||
beautiful_A = AStaruyj "красив" "красивее";
|
||||
bark_N = mkN "лай" "лая" "лаю" "лай" "лаем" "лае" "лае" "лаи" "лаев" "лаям" "лаи" "лаями" "лаях" "лаях" masculine inanimate ;
|
||||
beautiful_A = AStaruyj "красив" "красивее";
|
||||
become_VA = regV perfective second "станов" "лю" "стал" "стань" "стать" ;
|
||||
beer_N = nChislo "пив" ;
|
||||
beg_V2V = dirV2 (mkV imperfective "прошу" "просишь" "просит" "просим" "просите" "просят" "просил" "проси" "просить" );
|
||||
big_A = AKakoj_Nibud "больш" "" "больше" ;
|
||||
-- beer_N = nChislo "пив" ; -- +++ MG_UR: wrong! +++
|
||||
beer_N = nSlovo "пив" ; -- +++ MG_UR: added +++
|
||||
beg_V2V = dirV2 (mkV imperfective "прошу" "просишь" "просит" "просим" "просите" "просят" "просил" "проси" "просить" );
|
||||
belly_N = nTelefon "живот" ;
|
||||
big_A = AKakoj_Nibud "больш" "" "больше" ;
|
||||
bike_N = nTelefon "велосипед" ;
|
||||
bird_N = nEdinica "птиц" ;
|
||||
black_A = AStaruyj "чёрн" "чернее";
|
||||
blue_A = AMolodoj "голуб" "голубее";
|
||||
bite_V2 = dirV2 (regV imperfective first "куса" "ю" "кусал" "кусай" "кусать");
|
||||
black_A = AStaruyj "чёрн" "чернее";
|
||||
blood_N = nBol "кров" ;
|
||||
blow_V = regV imperfective first "ду" "ю" "дул" "дуй" "дуть" ;
|
||||
blue_A = AMolodoj "голуб" "голубее";
|
||||
boat_N = nMashina "лодк" ;
|
||||
bone_N = nBol "кост" ;
|
||||
book_N = nNoga "книг" ;
|
||||
boot_N = nBank "сапог" ;
|
||||
boss_N = nStomatolog "начальник" ;
|
||||
boy_N = nStomatolog "мальчик" ;
|
||||
bread_N = nAdres "хлеб" ;
|
||||
break_V2 = dirV2 (regV imperfective first "прерыва" "ю" "прерывал" "прерывай" "прерывать" );
|
||||
|
||||
broad_A = AMalenkij "широк" "шире";
|
||||
brother_N2 = mkN2 (nBrat "брат") ;
|
||||
brown_A = AStaruyj "коричнев" "коричневее";
|
||||
breast_N = nBol "грудь" ;
|
||||
breathe_V = regV imperfective second "дыш" "у" "дышал" "дыши" "дышать" ;
|
||||
--- bridge_N = nMost "мост" ;
|
||||
broad_A = AMalenkij "широк" "шире";
|
||||
brother_N2 = mkN2 (nBrat "брат") ;
|
||||
brown_A = AStaruyj "коричнев" "коричневее";
|
||||
burn_V = regV imperfective second "гор" "ю" "горел" "гори" "гореть" ;
|
||||
-- butter_N = nChislo "масл"; -- +++ MG_UR: wrong! +++
|
||||
butter_N = nSlovo "масл"; -- +++ MG_UR: added +++
|
||||
buy_V2 = dirV2 (regV imperfective first "покупа" "ю" "покупал" "покупай" "покупать" );
|
||||
camera_N = nMashina "kamer" ;
|
||||
--- candle_N = nSvecha "свеч" ; -- +++ MG_UR: added +++
|
||||
cap_N = nNoga "чашк" ; -- чаш-ек Pl-Gen
|
||||
car_N = nMashina "машин" ;
|
||||
car_N = nMashina "машин" ;
|
||||
carpet_N = mkN "ковёр" "ковра" "ковру" "ковёр" "ковром" "ковре" "ковре" "ковры" "ковров" "коврам" "ковры" "коврами" "коврах" "коврах" masculine inanimate ;
|
||||
cat_N = nMashina "кошк" ;
|
||||
cat_N = nMashina "кошк" ;
|
||||
ceiling_N = nPotolok "потол" ;
|
||||
chair_N = nStul "стул" ;
|
||||
cheese_N = nTelefon "сыр" ;
|
||||
child_N = mkN "ребёнок" "ребёнка" "ребёнку" "ребёнка" "ребёнком" "ребёнке" "дети" "детей" "детям" "детей" "детьми" "детях" masculine animate ;
|
||||
ceiling_N = nPotolok "потол" ;
|
||||
chair_N = nStul "стул" ;
|
||||
cheese_N = nTelefon "сыр" ;
|
||||
--- child2_N = nRebenok "реб" ; -- Achtung: Hier 'child' im Sinne von "junge Lebewesen" (dann keine Suppletivformen(?))!
|
||||
child_N = mkN "ребёнок" "ребёнка" "ребёнку" "ребёнка" "ребёнком" "ребёнке" "ребёнке" "дети" "детей" "детям" "детей" "детьми" "детях" "детях" masculine animate ;
|
||||
church_N = mkN "церковь" "церкви" "церкви" "церковь" "церковью" "церкви" "церкви" "церкви" "церквей" "церквям" "церкви" "церквями" "церквях" "церквях" masculine inanimate ;
|
||||
--- citizen_N = nGrazhdanin "господ" ; -- +++ MG_UR: added +++
|
||||
city_N = nAdres "город" ;
|
||||
city_N = nAdres "город" ;
|
||||
|
||||
clean_A = AStaruyj "чист" "чище";
|
||||
clever_A = AStaruyj "умн" "умнее";
|
||||
close_V2= dirV2 (regV imperfective first "закрыва" "ю" "закрывал" "закрывай" "закрывать" );
|
||||
-- cloud_N = nChislo "облак" ; -- +++ MG_UR: wrong! +++
|
||||
cloud_N = nChislo "облак" "облаков" ; -- +++ MG_UR: added +++
|
||||
coat_N = mkIndeclinableNoun "пальто" masculine inanimate ;
|
||||
close_V2= dirV2 (regV imperfective first "закрыва" "ю" "закрывал" "закрывай" "закрывать" );
|
||||
cold_A = AStaruyj "холодн" "холоднее";
|
||||
come_V = regV imperfective first "прихо" "жу" "приходил" "приходи" "приходить" ;
|
||||
cold_A = AStaruyj "холодн" "холоднее";
|
||||
computer_N = nTelefon "компьютер" ;
|
||||
correct_A = AStaruyj "правильн" "правильнее";
|
||||
count_V2 = dirV2 (regV imperfective first "счита" "ю" "считал" "считай" "считать" ) ;
|
||||
country_N = nMashina "стран" ;
|
||||
computer_N = nTelefon "компьютер" ;
|
||||
country_N = nMashina "стран" ;
|
||||
cousin_N = nTelefon "кузен" ;
|
||||
cow_N = nMashina "коров" ;
|
||||
die_V = regV imperfective first "умира" "ю" "умирал" "умирай" "умирать" ;
|
||||
dirty_A = AStaruyj "грязн" "грязнее" ;
|
||||
doctor_N = nAdres "доктор" ;
|
||||
dog_N = nNoga "собак" ;
|
||||
door_N = nBol "двер" ;
|
||||
drink_V2 = dirV2 (regV imperfective firstE "пь" "ю" "пил" "пей" "пить" );
|
||||
eat_V2 = dirV2 (regV imperfective first "куша" "ю" "кушал" "кушай" "кушать" );
|
||||
enemy_N = nStomatolog "враг" ;
|
||||
factory_N = nNoga "фабрик" ;
|
||||
father_N2 = mkN2 (mkN "отец" "отца" "отцу" "отца" "отцом" "отце" "отцы" "отцов" "отцам" "отцов" "отцами" "отцах" masculine animate);
|
||||
fear_VS= regV imperfective second "бо" "ю" "боял" "бой" "боять" ;
|
||||
find_V2 = dirV2 (mkV imperfective "нахожу" "находишь" "находит" "находим" "находите" "находят" "находил" "находи" "находить" );
|
||||
fish_N = nMashina "рыб" ;
|
||||
floor_N = nTelefon "пол" ;
|
||||
forget_V2= dirV2 (regV imperfective first "забыва" "ю" "забывал" "забывай" "забывать" );
|
||||
fridge_N = nBank "холодильник" ;
|
||||
friend_N = mkN "друг" "друга" "другу" "друга" "другом" "друге" "друзья" "друзей" "друзьям" "друзей" "дузьями" "друзьях" masculine animate;
|
||||
fruit_N = nTelefon "фрукт" ;
|
||||
garden_N = nTelefon "сад" ;
|
||||
girl_N = nNoga "девочк" ;
|
||||
glove_N = nNoga "перчатк" ;
|
||||
gold_N = nChislo "золот" ;
|
||||
good_A = AKhoroshij "хорош" "лучше" ;
|
||||
go_V= regV imperfective second "хо" "жу" "ходил" "ходи" "ходить" ;
|
||||
green_A = AStaruyj "зелен" "зеленее" ;
|
||||
harbour_N = nTelefon "залив" ;
|
||||
hate_V2= dirV2 (regV imperfective second "ненави" "жу" "ненавидел" "ненавидь" "ненавидеть" );
|
||||
hat_N = nMashina "шляп" ;
|
||||
have_V2= dirV2 (regV imperfective first "име" "ю" "имел" "имей" "иметь" );
|
||||
hear_V2= dirV2 (regV imperfective first "слуша" "ю" "слушал" "слушай" "слушать" );
|
||||
hill_N = nTelefon "холм" ;
|
||||
hope_VS= regV imperfective first "наде" "ю" "надеял" "надей" "надеять" ;
|
||||
horse_N = nBol "лошад" ;
|
||||
hot_A = AKhoroshij "горяч" "горячее" ;
|
||||
house_N = nAdres "дом" ;
|
||||
|
||||
important_A = AStaruyj "важн" "важнее" ;
|
||||
industry_N = nChislo "производств" ;
|
||||
iron_N = nChislo "желез" ;
|
||||
king_N = mkN "король" "короля" "королю" "короля" "королем" "короле" "короли" "королей" "королям" "королей" "королями" "королях" masculine animate;
|
||||
know_V2= dirV2 (regV imperfective first "зна" "ю" "знал" "знай" "знать" );
|
||||
lake_N = nChislo "озер" ;
|
||||
lamp_N = nMashina "ламп" ;
|
||||
learn_V2= dirV2 (regV imperfective second "уч" "у" "учил" "учи" "учить" );
|
||||
leather_N = nEdinica "кож" ;
|
||||
leave_V2= dirV2 (regV imperfective second "ухож" "у" "уходил" "уходи" "уходить" );
|
||||
like_V2= dirV2 (regV imperfective second "нрав" "лю" "нравил" "нравь" "нравить" );
|
||||
listen_V2= dirV2 (regV imperfective first "слуша" "ю" "слушал" "слушай" "слушать" );
|
||||
live_V= regV imperfective firstE "жив" "у" "жил" "живи" "жить" ;
|
||||
long_A = AStaruyj "длинн" "длиннее" ;
|
||||
lose_V2 = dirV2 (regV imperfective first "теря" "ю" "терял" "теряй" "терять" );
|
||||
love_N = nBol "любов" ;
|
||||
love_V2= dirV2 (regV imperfective second "люб" "лю" "любил" "люби" "любить" );
|
||||
man_N = nStomatolog "человек" ;
|
||||
meat_N =nChislo "мяс" ;
|
||||
milk_N = nChislo "молок" ;
|
||||
moon_N = nMashina "лун" ;
|
||||
mother_N2 = mkN2 ( nMashina "мам") ;
|
||||
mountain_N = nMashina "гор" ;
|
||||
music_N = nNoga "музык" ;
|
||||
narrow_A = AStaruyj "узк" "уже" ;
|
||||
|
||||
new_A = AStaruyj "нов" "новее" ;
|
||||
newspaper_N = nMashina "газет" ;
|
||||
oil_N = nBol "нефть" ;
|
||||
old_A = AStaruyj "стар" "старше" ;
|
||||
open_V2= dirV2 (regV imperfective first "открыва" "ю" "открывал" "открывай" "открывать" );
|
||||
paper_N = nNoga "бумаг" ;
|
||||
peace_N = nTelefon "мир" ;
|
||||
pen_N = nNoga "ручк" ;
|
||||
planet_N = nMashina "планет" ;
|
||||
plastic_N = nMashina "пластмасс" ;
|
||||
play_V2 = mkV2 (regV imperfective first "игра" "ю" "играл" "играй" "играть" ) "c" instructive;
|
||||
policeman_N = nTelefon "милиционер" ;
|
||||
priest_N = nStomatolog "священник" ;
|
||||
queen_N = nMashina "королев" ;
|
||||
radio_N = mkIndeclinableNoun "радио" neuter inanimate;
|
||||
read_V2 = dirV2 (regV imperfective first "чита" "ю" "читал" "читай" "читать" );
|
||||
red_A = AStaruyj "красн" "краснее" ;
|
||||
religion_N = nMalyariya "религи" ;
|
||||
restaurant_N = nTelefon "ресторан" ;
|
||||
river_N = nNoga "рек" ;
|
||||
rock_N = nUroven "кам" ;
|
||||
roof_N = nEdinica "крыш" ;
|
||||
rubber_N = nMashina "резин" ;
|
||||
run_V = regV imperfective first "бега" "ю" "бегал" "бегай" "бегать" ;
|
||||
say_VS = regV imperfective second "говор" "ю" "говорил" "говори" "говорить" ;
|
||||
school_N = nMashina "школ" ;
|
||||
science_N = nNoga "наук" ;
|
||||
sea_N = nProizvedenie "мор" ;
|
||||
seek_V2 = dirV2 (regV imperfective first "ищ" "у" "искал" "ищи" "искать" );
|
||||
see_V2 = dirV2 (regV imperfective second "виж" "у" "видел" "видь" "видеть" );
|
||||
sell_V3 = tvDirDir (regV imperfective firstE "прода" "ю" "продавал" "продавай" "продавать" );
|
||||
send_V3 = tvDirDir (regV imperfective first "посыла" "ю" "посылал" "посылай" "посылать" );
|
||||
sheep_N = nMashina "овц" ;
|
||||
ship_N = nNol "корабл" ;
|
||||
|
||||
shirt_N = nNoga "рубашк" ;
|
||||
shoe_N = mkN "туфля" "туфли" "туфле" "туфлю" "туфлей" "туфле" "туфли" "туфель" "туфлям" "туфли" "туфлями" "туфлях" masculine inanimate;
|
||||
shop_N = nTelefon "магазин" ;
|
||||
short_A = AMalenkij "коротк" "короче" ;
|
||||
silver_N = nChislo "серебр" ;
|
||||
sister_N = nMashina "сестр" ;
|
||||
sleep_V = regV imperfective second "сп" "лю" "спал" "спи" "спать" ;
|
||||
small_A = AMalenkij "маленьк" "меньше" ;
|
||||
snake_N = nTetya"зме" ;
|
||||
sock_N = nPotolok "нос" ;
|
||||
speak_V2 = dirV2 (regV imperfective second "говор" "ю" "говорил" "говори" "говорить" );
|
||||
star_N = nMashina "звезд" ;
|
||||
steel_N = nBol "стал" ;
|
||||
stone_N = nNol "камен" ;
|
||||
stove_N = nBol "печ" ;
|
||||
student_N = nTelefon "студент" ;
|
||||
stupid_A = AMolodoj "тупой" "тупее" ;
|
||||
sun_N = mkN "солнце" "солнца" "солнцу" "солнце" "солнцем" "солнце" "солнца" "солнц" "солнцам" "солнца" "солнцами" "солнцах" neuter inanimate;
|
||||
switch8off_V2 = dirV2 (regV imperfective first "выключа" "ю" "выключал" "выключай" "выключать") ;
|
||||
switch8on_V2 = dirV2 (regV imperfective first "включа" "ю" "включал" "включай" "включать") ;
|
||||
table_N = nTelefon "стол" ;
|
||||
teacher_N = nNol "учител" ;
|
||||
teach_V2 = dirV2 (regV imperfective second "уч" "у" "учил" "учи" "учить" );
|
||||
television_N = nProizvedenie "телевидени" ;
|
||||
thick_A = AStaruyj "толст" "толще" ;
|
||||
thin_A = AMalenkij "тонк" "тоньше" ;
|
||||
train_N = nAdres "поезд" ;
|
||||
travel_V = regV imperfective first "путешеству" "ю" "путешествовал" "путешествуй" "путешествовать" ;
|
||||
tree_N = nChislo "дерев" ;
|
||||
--trousers_N = mkN "" "" "" "" "" "" "штаны" "штанов" "штанам" "штаны" "штанами" "штанах" masculine inanimate;
|
||||
ugly_A = AStaruyj "некрасив" "некрасивее" ;
|
||||
understand_V2 = dirV2 (regV imperfective first "понима" "ю" "понимал" "понимай" "понимать" );
|
||||
university_N = nTelefon "университет" ;
|
||||
village_N = nMalyariya "деревн" ;
|
||||
wait_V2 = dirV2 (regV imperfective firstE "жд" "у" "ждал" "жди" "ждать" );
|
||||
walk_V = regV imperfective first "гуля" "ю" "гулял" "гуляй" "гулять" ;
|
||||
warm_A = AStaruyj "тёпл" "теплее" ;
|
||||
war_N = nMashina "войн" ;
|
||||
watch_V2 = dirV2 (regV imperfective second "смотр" "ю" "смотрел" "смотри" "смотреть" );
|
||||
water_N = nMashina "вод" ;
|
||||
white_A = AStaruyj "бел" "белее" ;
|
||||
|
||||
window_N = nChislo "окн" ;
|
||||
wine_N = nChislo "вин" ;
|
||||
win_V2 = dirV2 (regV imperfective first "выигрыва" "ю" "выигрывал" "выигрывай" "выигрывать" );
|
||||
cousin_N = nTelefon "кузен" ;
|
||||
cow_N = nMashina "коров" ;
|
||||
cut_V2 = dirV2 (regV imperfective first "реж" "у" "резал" "режь" "резать" ) ;
|
||||
--- daughter_N = nDoch "доч" ; -- +++ MG_UR: added +++
|
||||
-- day_N = mkN "день" "дня" "дню" "день" "днём" "дне" "дне" "дни" "дней" "дням" "дни" "днями" "днях" "днях" masculine inanimate ;
|
||||
day_N = nDen "д" ; -- +++ MG_UR: class better than mkN +++
|
||||
--- desk_N = nStol "стол" ;
|
||||
--- dictionary_N = nSlovar "словар" ;
|
||||
die_V = regV imperfective first "умира" "ю" "умирал" "умирай" "умирать" ;
|
||||
dig_V = regV imperfective first "копа" "ю" "копал" "копай" "копать" ;
|
||||
dirty_A = AStaruyj "грязн" "грязнее" ;
|
||||
distance_N3 = mkN3 (nProizvedenie "расстояни") from_Prep to_Prep ;
|
||||
do_V2 = dirV2 (regV imperfective first "дела" "ю" "делал" "делай" "делать" );
|
||||
wood_N = nChislo "дерев" ;
|
||||
write_V2 = dirV2 (regV imperfective first "пиш" "у" "писал" "пиши" "писать" );
|
||||
yellow_A = AStaruyj "жёлт" "желтее" ;
|
||||
young_A = AMolodoj "молод" "моложе";
|
||||
|
||||
do_V2 = dirV2 (regV imperfective first "дела" "ю" "делал" "делай" "делать" );
|
||||
now_Adv = mkAdv "сейчас" ;
|
||||
doctor_N = nAdres "доктор" ;
|
||||
dog_N = nNoga "собак" ;
|
||||
door_N = nBol "двер" ;
|
||||
drink_V2 = dirV2 (regV imperfective firstE "пь" "ю" "пил" "пей" "пить" );
|
||||
dry_A = AMolodoj "сух" "суше";
|
||||
dull_A = AStaruyj "скучн" "скучнее";
|
||||
dust_N = nBol "пыл" ;
|
||||
-- ear_N = nChislo "ухо" ; -- +++ MG_UR: wrong! +++
|
||||
earth_N = nTetya "земл" ;
|
||||
easy_A2V = mkA2 (AMalenkij "лёгк" "легче") "для" genitive ;
|
||||
eat_V2 = dirV2 (regV imperfective first "куша" "ю" "кушал" "кушай" "кушать" );
|
||||
-- egg_N = nChislo "яйц" ; -- +++ MG_UR: wrong! +++
|
||||
egg_N = nChislo "яйц" "яиц" ; -- +++ MG_UR: added +++
|
||||
empty_A = AMolodoj "пуст" "пустее";
|
||||
enemy_N = nStomatolog "враг" ;
|
||||
eye_N = nAdres "глаз" ;
|
||||
factory_N = nNoga "фабрик" ;
|
||||
fall_V = regV imperfective first "пада" "ю" "падал" "падай" "падать" ;
|
||||
far_Adv = mkAdv "далеко";
|
||||
fat_N = nBank "жир" ;
|
||||
father_N2 = mkN2 (mkN "отец" "отца" "отцу" "отца" "отцом" "отце" "отце" "отцы" "отцов" "отцам" "отцов" "отцами" "отцах" "отцах" masculine animate);
|
||||
fear_V2 =dirV2 (regV imperfective first "бо" "ю" "боял" "бой" "боять" );
|
||||
fear_VS = regV imperfective second "бо" "ю" "боял" "бой" "боять" ;
|
||||
feather_N = mkN "перо" "пера" "перу" "пера" "пером" "пере" "пере" "перья" "перьев" "перьям" "перьев" "перьями" "перьях" "перьях" neuter inanimate ;
|
||||
--- fellow_N = nTovarish "товарищ" ; -- +++ MG_UR: added +++
|
||||
fight_V2 = dirV2 (regV imperfective firstE "дер" "у" "драл" "дери" "драть" ) ;
|
||||
find_V2 = dirV2 (mkV imperfective "нахожу" "находишь" "находит" "находим" "находите" "находят" "находил" "находи" "находить" );
|
||||
fingernail_N = mkN "ноготь" "ногтя" "ногтю" "ногтя" "ногтем" "ногте" "ногте" "ногти" "ногтей" "ногтям" "ногтей" "ногтями" "ногтях" "ногтях" masculine inanimate ;
|
||||
fire_N = mkN "огонь" "огня" "огню" "огня" "огнём" "огне" "огне" "огни" "огней" "огням" "огней" "огнями" "огнях" "огнях" masculine inanimate ;
|
||||
fish_N = nMashina "рыб" ;
|
||||
--- flag_N = nVremja "зна" ;
|
||||
float_V = regV imperfective firstE "плыв" "у" "плыл" "плыви" "плыть" ;
|
||||
floor_N = nTelefon "пол" ;
|
||||
flow_V = regV imperfective firstE "тек" "у" "тёк" "теки" "течь" ;
|
||||
flower_N = mkN "отец" "отца" "отцу" "отца" "отцом" "отце" "отце" "отцы" "отцов" "отцам" "отцов" "отцами" "отцах" "отцах" masculine animate ;
|
||||
fly_V = regV imperfective second "лета" "ю" "летал" "летай" "летать" ;
|
||||
fog_N = nTelefon "туман" ;
|
||||
foot_N = nTetya "ступн" ;
|
||||
forest_N = nLes "лес" ;
|
||||
forget_V2= dirV2 (regV imperfective first "забыва" "ю" "забывал" "забывай" "забывать" );
|
||||
freeze_V = regV imperfective first "замерза" "ю" "замерзал" "замерзай" "замерзать" ;
|
||||
fridge_N = nBank "холодильник" ;
|
||||
-- friend_N = mkN "друг" "друга" "другу" "друга" "другом" "друге" "друге" "друзья" "друзей" "друзьям" "друзей" "дузьями" "друзьях" "друзьях" masculine animate ;
|
||||
friend_N = nDrug "дру" ; -- +++ MG_UR: class better than mkN +++
|
||||
fruit_N = nTelefon "фрукт" ;
|
||||
full_A = AStaruyj "полн" "полнее";
|
||||
fun_AV = AStaruyj "весёл" "веселее";
|
||||
garden_N = nTelefon "сад" ;
|
||||
girl_N = nNoga "девочк" ;
|
||||
give_V3 = tvDirDir (regV imperfective firstE "да" "ю" "давал" "давай" "давать" ) ;
|
||||
glove_N = nNoga "перчатк" ;
|
||||
go_V= regV imperfective second "хо" "жу" "ходил" "ходи" "ходить" ;
|
||||
-- gold_N = nChislo "золот" ; -- +++ MG_UR: wrong! +++
|
||||
gold_N = nSlovo "золот" ; -- +++ MG_UR: added +++
|
||||
good_A = AKhoroshij "хорош" "лучше" ;
|
||||
grammar_N = nNoga "грамматик";
|
||||
grass_N = nMashina "трав" ;
|
||||
green_A = AStaruyj "зелен" "зеленее" ;
|
||||
guts_N = nBol "внутренност" ;
|
||||
hair_N = nTelefon "волос" ;
|
||||
hand_N = nNoga "рук" ;
|
||||
harbour_N = nTelefon "залив" ;
|
||||
hat_N = nMashina "шляп" ;
|
||||
hate_V2= dirV2 (regV imperfective second "ненави" "жу" "ненавидел" "ненавидь" "ненавидеть" );
|
||||
have_V2= dirV2 (regV imperfective first "име" "ю" "имел" "имей" "иметь" );
|
||||
head_N = nMashina "голов" ;
|
||||
hear_V2= dirV2 (regV imperfective first "слуша" "ю" "слушал" "слушай" "слушать" );
|
||||
heart_N = mkN "сердце" "сердца" "сердцу" "сердца" "сердцем" "сердце" "сердце" "сердца" "сердец" "сердцам" "сердец" "сердцами" "сердцах" "сердцах" neuter inanimate ;
|
||||
--- heaven_N = nNebo "неб" ; -- +++ MG_UR: added +++
|
||||
heavy_A = AStaruyj "тяжел" "тяжелее";
|
||||
hill_N = nTelefon "холм" ;
|
||||
hit_V2 = dirV2 (regV imperfective first "ударя" "ю" "ударял" "ударяй" "ударять" );
|
||||
hold_V2 = dirV2 (regV imperfective second "держ" "у" "держал" "держи" "держать" );
|
||||
hope_VS= regV imperfective first "наде" "ю" "надеял" "надей" "надеять" ;
|
||||
horn_N = nAdres "рог" ;
|
||||
-- horse_N = nBol "лошад" ; -- +++ MG_UR: wrong! +++
|
||||
horse_N = nLoshad "лошад" ; -- +++ MG_UR: added +++
|
||||
hot_A = AKhoroshij "горяч" "горячее" ;
|
||||
house_N = nAdres "дом" ;
|
||||
hunt_V2 = dirV2 (regV imperfective second "охоч" "у" "охотил" "охоть" "охотить" ) ;
|
||||
husband_N = mkN "муж" "мужа" "мужу" "мужа" "мужем" "муже" "муже" "мужья" "мужей" "мужьям" "мужей" "мужьями" "мужьях" "мужьях" masculine animate ;
|
||||
ice_N = mkN "лёд" "льда" "льду" "льда" "льдом" "льде" "льде" "льды" "льдов" "льдам" "льдов" "льдами" "льдах" "льдах" masculine inanimate ;
|
||||
important_A = AStaruyj "важн" "важнее" ;
|
||||
-- industry_N = nChislo "производств" ; -- +++ MG_UR: wrong! +++
|
||||
industry_N = nSlovo "производств" ; -- +++ MG_UR: added +++
|
||||
-- iron_N = nChislo "желез" ; -- +++ MG_UR: wrong! +++
|
||||
iron_N = nSlovo "желез" ; -- +++ MG_UR: added +++
|
||||
jump_V = regV imperfective first "прыга" "ю" "прыгал" "прыгай" "прыгать" ;
|
||||
song_N = nTetya "песн" ;
|
||||
add_V3 = mkV3 (regV imperfective first "складыва" "ю" "складывал" "складывай" "складывать" ) "" "в" accusative accusative;
|
||||
number_N = nChislo "числ" ;
|
||||
put_V2 = dirV2 (regV imperfective firstE "клад" "у" "клал" "клади" "класть" );
|
||||
stop_V = regV imperfective first "останавлива" "ю" "останавливал" "останавливай" "останавливать";
|
||||
jump_V = regV imperfective first "прыга" "ю" "прыгал" "прыгай" "прыгать" ;
|
||||
|
||||
distance_N3 = mkN3 (nProizvedenie "расстояни") from_Prep to_Prep ;
|
||||
|
||||
-- in Russian combinations with verbs are expressed with adverbs:
|
||||
-- "легко понять" ("easy to understand"), which is different from
|
||||
-- adjective expression "легкий для понимания" ("easy for understanding")
|
||||
-- So the next to words are adjectives, since there are such adjectives
|
||||
-- in Russian, but to use them with verb would be wrong in Russian:
|
||||
fun_AV = AStaruyj "весёл" "веселее";
|
||||
easy_A2V = mkA2 (AMalenkij "лёгк" "легче") "для" genitive ;
|
||||
|
||||
empty_A = AMolodoj "пуст" "пустее";
|
||||
married_A2 = mkA2 (adjInvar "замужем") "за" instructive ;
|
||||
paint_V2A = dirV2 (regV imperfective first "рису" "ю" "рисовал" "рисуй" "рисовать" ) ;
|
||||
probable_AS = AStaruyj "возможн" "возможнее";
|
||||
rain_V0 = idetDozhd verbIdti; -- No such verb in Russian!
|
||||
talk_V3 = mkV3 (regV imperfective second "говор" "ю" "говорил" "говори" "говорить" ) "с" "о" instructive prepositional;
|
||||
wonder_VQ = regV imperfective first "интересу" "ю" "интересовал" "интересуй" "интересовать";
|
||||
|
||||
-- Nouns
|
||||
|
||||
animal_N = nZhivotnoe "животн" ;
|
||||
ashes_N = nPepel "пеп" ;
|
||||
back_N = nMashina "спин" ;
|
||||
bark_N = mkN "лай" "лая" "лаю" "лай" "лаем" "лае" "лаи" "лаев" "лаям" "лаи" "лаями" "лаях" masculine inanimate;
|
||||
belly_N = nTelefon "живот" ;
|
||||
bird_N = nEdinica "птиц" ;
|
||||
blood_N = nBol "кров" ;
|
||||
bone_N = nBol "кост" ;
|
||||
breast_N = nBol "грудь" ;
|
||||
|
||||
cloud_N = nChislo "облак" ;
|
||||
day_N = mkN "день" "дня" "дню" "день" "днём" "дне" "дни" "дней" "дням" "дни" "днями" "днях" masculine inanimate ;
|
||||
|
||||
dust_N = nBol "пыл" ;
|
||||
ear_N = nChislo "ухо" ;
|
||||
earth_N = nTetya "земл" ;
|
||||
egg_N = nChislo "яйц" ;
|
||||
eye_N = nAdres "глаз" ;
|
||||
fat_N = nBank "жир" ;
|
||||
|
||||
-- father_N = UseN2 father_N2 ;
|
||||
feather_N = mkN "перо" "пера" "перу" "пера" "пером" "пере" "перья" "перьев" "перьям" "перьев" "перьями" "перьях" neuter inanimate ;
|
||||
fingernail_N = mkN "ноготь" "ногтя" "ногтю" "ногтя" "ногтем" "ногте" "ногти" "ногтей" "ногтям" "ногтей" "ногтями" "ногтях" masculine inanimate ;
|
||||
fire_N = mkN "огонь" "огня" "огню" "огня" "огнём" "огне" "огни" "огней" "огням" "огней" "огнями" "огнях" masculine inanimate ;
|
||||
fish_N = nMashina "рыб" ;
|
||||
flower_N = mkN "отец" "отца" "отцу" "отца" "отцом" "отце" "отцы" "отцов" "отцам" "отцов" "отцами" "отцах" masculine animate ;
|
||||
fog_N = nTelefon "туман" ;
|
||||
foot_N = nTetya "ступн" ;
|
||||
forest_N = nAdres "лес" ;
|
||||
fruit_N = nTelefon "фрукт";
|
||||
grass_N = nMashina "трав" ;
|
||||
guts_N = nBol "внутренност" ;
|
||||
hair_N = nTelefon "волос" ;
|
||||
hand_N = nNoga "рук" ;
|
||||
head_N = nMashina "голов" ;
|
||||
heart_N = mkN "сердце" "сердца" "сердцу" "сердца" "сердцем" "сердце" "сердца" "сердец" "сердцам" "сердец" "сердцами" "сердцах" neuter inanimate;
|
||||
horn_N = nAdres "рог" ;
|
||||
kill_V2 = dirV2 (regV imperfective first "убива" "ю" "убивал" "убивай" "убивать" ) ;
|
||||
king_N = mkN "король" "короля" "королю" "короля" "королем" "короле" "короле" "короли" "королей" "королям" "королей" "королями" "королях" "королях" masculine animate ;
|
||||
knee_N = mkN "колено" "колена" "колену" "колена" "коленом" "колене" "колене" "колени" "колен" "коленам" "колен" "коленями" "коленях" "коленях" neuter inanimate ;
|
||||
know_V2= dirV2 (regV imperfective first "зна" "ю" "знал" "знай" "знать" );
|
||||
-- lake_N = nChislo "озер" ; -- +++ MG_UR: wrong! +++
|
||||
lake_N = nChislo "озер" "озёр"; -- +++ MG_UR: added +++
|
||||
lamp_N = nMashina "ламп" ;
|
||||
language_N = nBank "язык" ;
|
||||
laugh_V = regV imperfective firstE "сме" "ю" "смеял" "смей" "смеять" ;
|
||||
leaf_N = nStul "лист" ;
|
||||
learn_V2= dirV2 (regV imperfective second "уч" "у" "учил" "учи" "учить" );
|
||||
leather_N = nEdinica "кож" ;
|
||||
leave_V2= dirV2 (regV imperfective second "ухож" "у" "уходил" "уходи" "уходить" );
|
||||
left_Ord = (uy_j_EndDecl "лев" ) ** {lock_A = <>};
|
||||
leg_N = nNoga "ног" ;
|
||||
lie_V = regV imperfective firstE "лг" "у" "лгал" "лги" "лгать" ;
|
||||
like_V2= dirV2 (regV imperfective second "нрав" "лю" "нравил" "нравь" "нравить" );
|
||||
listen_V2= dirV2 (regV imperfective first "слуша" "ю" "слушал" "слушай" "слушать" );
|
||||
live_V= regV imperfective firstE "жив" "у" "жил" "живи" "жить" ;
|
||||
liver_N = nBol "печен" ;
|
||||
ice_N = mkN "лёд" "льда" "льду" "льда" "льдом" "льде" "льды" "льдов" "льдам" "льдов" "льдами" "льдах" masculine inanimate ;
|
||||
knee_N = mkN "колено" "колена" "колену" "колена" "коленом" "колене" "колени" "колен" "коленам" "колен" "коленями" "коленях" neuter inanimate ;
|
||||
lake_N = nChislo "озер" ;
|
||||
leaf_N = nStul "лист" ;
|
||||
leg_N = nNoga "ног" ;
|
||||
liver_N = nBol "печен" ;
|
||||
louse_N = mkN "вошь" "вши" "вши" "вошь" "вошью" "вше" "вши" "вшей" "вшам" "вшей" "вшами" "вшах" feminine animate ;
|
||||
|
||||
meat_N = nChislo "мяс" ;
|
||||
moon_N = nMashina "лун" ;
|
||||
|
||||
long_A = AStaruyj "длинн" "длиннее" ;
|
||||
lose_V2 = dirV2 (regV imperfective first "теря" "ю" "терял" "теряй" "терять" );
|
||||
louse_N = mkN "вошь" "вши" "вши" "вошь" "вошью" "вше" "вше" "вши" "вшей" "вшам" "вшей" "вшами" "вшах" "вшах" feminine animate ;
|
||||
love_N = nBol "любов" ;
|
||||
love_V2= dirV2 (regV imperfective second "люб" "лю" "любил" "люби" "любить" );
|
||||
man_N = nStomatolog "человек" ;
|
||||
married_A2 = mkA2 (adjInvar "замужем") "за" instructive ;
|
||||
-- meat_N = nChislo "мяс" ; -- +++ MG_UR: wrong! +++
|
||||
-- milk_N = nChislo "молок" ; -- +++ MG_UR: wrong! +++
|
||||
--- mister_N = nGospodin "господ" ; -- +++ MG_UR: added +++
|
||||
--- mom_N = nMat "мат" ; -- +++ MG_UR: added +++
|
||||
--- month_N = nMesjac "месяц" ; -- +++ MG_UR: added +++
|
||||
moon_N = nMashina "лун" ;
|
||||
mother_N2 = mkN2 ( nMashina "мам") ;
|
||||
mountain_N = nMashina "гор" ;
|
||||
mouth_N = mkN "рот" "рта" "рту" "рот" "ртом" "рте" "рте" "рты" "ртов" "ртам" "рты" "ртами" "ртах" "ртах" masculine inanimate ;
|
||||
--- museum_N = nMusej "музе" ; -- +++ MG_UR: added +++
|
||||
music_N = nNoga "музык" ;
|
||||
-- name_N = mkN "имя" "имени" "имени" "имя" "именем" "имени" "имени" "имена" "имён" "именам" "имена" "именами" "именах" "именах" neuter inanimate ;
|
||||
name_N = nVremja "и" ; -- +++ MG_UR: class better than mkN +++
|
||||
narrow_A = AStaruyj "узк" "уже" ;
|
||||
near_A = AMalenkij "близк" "ближе";
|
||||
neck_N = nTetya "ше" ;
|
||||
new_A = AStaruyj "нов" "новее" ;
|
||||
newspaper_N = nMashina "газет" ;
|
||||
-- night_N = nBol "ноч" ; -- +++ MG_UR: wrong! +++
|
||||
night_N = nNoch "ноч" ; -- +++ MG_UR: added +++
|
||||
nose_N = nTelefon "нос" ;
|
||||
now_Adv = mkAdv "сейчас" ;
|
||||
number_N = nChislo "числ" "чисел" ;
|
||||
--- ocean_N = nMorje "мор" ; -- +++ MG_UR: added +++
|
||||
oil_N = nBol "нефть" ;
|
||||
old_A = AStaruyj "стар" "старше" ;
|
||||
open_V2= dirV2 (regV imperfective first "открыва" "ю" "открывал" "открывай" "открывать" );
|
||||
--- organise_V2 = dirV2 (regV imperfective foreign "организу" "ю" "организовал" "организуй" "организовать" ); -- +++ MG_UR: added +++
|
||||
paint_V2A = dirV2 (regV imperfective first "рису" "ю" "рисовал" "рисуй" "рисовать" ) ;
|
||||
--- palace_N = nDvorec "двор" ; -- +++ MG_UR: added +++
|
||||
paper_N = nNoga "бумаг" ;
|
||||
paris_PN = mkPN "Париж" Masc Inanimate ;
|
||||
peace_N = nTelefon "мир" ;
|
||||
pen_N = nNoga "ручк" ;
|
||||
person_N = nBol "личность" ;
|
||||
planet_N = nMashina "планет" ;
|
||||
plastic_N = nMashina "пластмасс" ;
|
||||
play_V = regV imperfective first "игра" "ю" "играл" "играй" "играть" ;
|
||||
play_V2 = mkV2 (regV imperfective first "игра" "ю" "играл" "играй" "играть" ) "c" instructive;
|
||||
policeman_N = nTelefon "милиционер" ;
|
||||
priest_N = nStomatolog "священник" ;
|
||||
probable_AS = AStaruyj "возможн" "возможнее";
|
||||
pull_V2 = dirV2 (regV imperfective first "тян" "у" "тянул" "тяни" "тянуть" ) ;
|
||||
push_V2 = dirV2 (regV imperfective first "толка" "ю" "толкал" "толкай" "толкать" );
|
||||
put_V2 = dirV2 (regV imperfective firstE "клад" "у" "клал" "клади" "класть" );
|
||||
queen_N = nMashina "королев" ;
|
||||
radio_N = mkIndeclinableNoun "радио" neuter inanimate;
|
||||
rain_N = nNol "дожд" ;
|
||||
name_N = mkN "имя" "имени" "имени" "имя" "именем" "имени" "имена" "имён" "именам" "имена" "именами" "именах" neuter inanimate;
|
||||
rain_V0 = idetDozhd verbIdti; -- No such verb in Russian!
|
||||
read_V2 = dirV2 (regV imperfective first "чита" "ю" "читал" "читай" "читать" );
|
||||
red_A = AStaruyj "красн" "краснее" ;
|
||||
religion_N = nMalyariya "религи" ;
|
||||
restaurant_N = nTelefon "ресторан" ;
|
||||
right_Ord = (uy_j_EndDecl "прав") ** {lock_A = <>} ;
|
||||
river_N = nNoga "рек" ;
|
||||
road_N = nNoga "дорог" ;
|
||||
night_N = nBol "ноч" ;
|
||||
nose_N = nTelefon "нос" ;
|
||||
person_N = nBol "личность" ;
|
||||
rain_N = nNol "дожд" ;
|
||||
|
||||
road_N = nNoga "дорог" ;
|
||||
root_N = nUroven "кор" ;
|
||||
rope_N = nNoga "веревк" ;
|
||||
salt_N = nBol "сол" ;
|
||||
sand_N = mkN "песок" "песка" "песку" "песок" "песком" "песке" "пески" "песков" "пескам" "песков" "песками" "песках" masculine inanimate ;
|
||||
sea_N = nProizvedenie "мор" ;
|
||||
seed_N = mkN "семя" "семени" "семении" "семя" "семенем" "семени" "семена" "семян" "семенам" "семена" "семенами" "семенах" neuter inanimate ;
|
||||
skin_N = nEdinica "кож" ;
|
||||
sky_N = mkN "небо" "неба" "небу" "небо" "небом" "небе" "небеса" "небес" "небесам" "небес" "небесами" "небесах" neuter inanimate ;
|
||||
smoke_N = nTelefon "дым" ;
|
||||
snake_N = nTetya "зме" ;
|
||||
snow_N = nAdres "снег" ;
|
||||
star_N = nMashina "звезд" ;
|
||||
stick_N = nNoga "палк" ;
|
||||
|
||||
|
||||
tail_N = nTelefon "хвост" ;
|
||||
tongue_N = nBank "язык" ;
|
||||
tooth_N = nTelefon "зуб" ;
|
||||
tree_N = nChislo "дерев" ;
|
||||
water_N = nMashina "вод" ;
|
||||
wife_N = nMashina "жен" ;
|
||||
wind_N = mkN "ветер" "ветра" "ветру" "ветер" "ветром" "ветра" "ветров" "ветра" "ветрам" "ветров" "ветрами" "ветрах" masculine inanimate ;
|
||||
wing_N = mkN "крыло" "крыла" "крылу" "крыло" "крылом" "крыле" "крылья" "крыльев" "крыльям" "крылья" "крыльями" "крыльях" neuter inanimate ;
|
||||
|
||||
worm_N = nNol "черв" ;
|
||||
year_N = nAdres "год" ;
|
||||
|
||||
|
||||
-- Verbs
|
||||
|
||||
bite_V2 = dirV2 (regV imperfective first "куса" "ю" "кусал" "кусай" "кусать");
|
||||
blow_V = regV imperfective first "ду" "ю" "дул" "дуй" "дуть" ;
|
||||
breathe_V = regV imperfective second "дыш" "у" "дышал" "дыши" "дышать" ;
|
||||
burn_V = regV imperfective second "гор" "ю" "горел" "гори" "гореть" ;
|
||||
count_V2 = dirV2 (regV imperfective first "счита" "ю" "считал" "считай" "считать" ) ;
|
||||
cut_V2 = dirV2 (regV imperfective first "реж" "у" "резал" "режь" "резать" ) ;
|
||||
dig_V = regV imperfective first "копа" "ю" "копал" "копай" "копать" ;
|
||||
|
||||
|
||||
fall_V = regV imperfective first "пада" "ю" "падал" "падай" "падать" ;
|
||||
|
||||
fight_V2 = dirV2 (regV imperfective firstE "дер" "у" "драл" "дери" "драть" ) ;
|
||||
float_V = regV imperfective firstE "плыв" "у" "плыл" "плыви" "плыть" ;
|
||||
flow_V = regV imperfective firstE "тек" "у" "тёк" "теки" "течь" ;
|
||||
fly_V = regV imperfective second "лета" "ю" "летал" "летай" "летать" ;
|
||||
freeze_V = regV imperfective first "замерза" "ю" "замерзал" "замерзай" "замерзать" ;
|
||||
give_V3 = tvDirDir (regV imperfective firstE "да" "ю" "давал" "давай" "давать" ) ;
|
||||
|
||||
hit_V2 = dirV2 (regV imperfective first "ударя" "ю" "ударял" "ударяй" "ударять" );
|
||||
hold_V2 = dirV2 (regV imperfective second "держ" "у" "держал" "держи" "держать" );
|
||||
hunt_V2 = dirV2 (regV imperfective second "охоч" "у" "охотил" "охоть" "охотить" ) ;
|
||||
kill_V2 = dirV2 (regV imperfective first "убива" "ю" "убивал" "убивай" "убивать" ) ;
|
||||
|
||||
laugh_V = regV imperfective firstE "сме" "ю" "смеял" "смей" "смеять" ;
|
||||
lie_V = regV imperfective firstE "лг" "у" "лгал" "лги" "лгать" ;
|
||||
play_V = regV imperfective first "игра" "ю" "играл" "играй" "играть" ;
|
||||
pull_V2 = dirV2 (regV imperfective first "тян" "у" "тянул" "тяни" "тянуть" ) ;
|
||||
push_V2 = dirV2 (regV imperfective first "толка" "ю" "толкал" "толкай" "толкать" );
|
||||
rub_V2 = dirV2 (regV imperfective firstE "тр" "у" "тёр" "три" "тереть" );
|
||||
|
||||
scratch_V2 = dirV2 (regV imperfective first "чеш" "у" "чесал" "чеши" "чесать" ) ;
|
||||
|
||||
sew_V = regV imperfective firstE "шь" "ю" "шил" "шей" "шить" ;
|
||||
sing_V = regV imperfective firstE "по" "ю" "пел" "пой" "петь" ;
|
||||
sit_V = mkV imperfective "сижу" "сидишь" "сидит" "сидим" "сидите" "сидят" "сидел" "сиди" "сидеть" ;
|
||||
smell_V = regV imperfective first "пахн" "у" "пахнул" "пахни" "пахнуть" ;
|
||||
spit_V = regV imperfective firstE "плю" "ю" "плевал" "плюй" "плевать" ;
|
||||
split_V2 = dirV2 (regV imperfective first "разбива" "ю" "разбивал" "разбей" "разбивать" ) ;
|
||||
squeeze_V2 = dirV2 (regV imperfective first "сжима" "ю" "сжимал" "сжимай" "сжимать" ) ;
|
||||
stab_V2 = dirV2 (regV imperfective first "кол" "ю" "колол" "коли" "колоть" ) ;
|
||||
stand_V = regV imperfective second "сто" "ю" "стоял" "стой" "стоять" ;
|
||||
suck_V2 = dirV2 (regV imperfective firstE "сос" "у" "сосал" "соси" "сосать") ;
|
||||
swell_V = regV imperfective first "опуха" "ю" "опухал" "опухай" "опухать" ;
|
||||
swim_V = regV imperfective first "плава" "ю" "плавал" "плавай" "плавать" ;
|
||||
think_V = regV imperfective first "дума" "ю" "думал" "думай" "думать" ;
|
||||
throw_V2 = dirV2 (regV imperfective first "броса" "ю" "бросал" "бросай" "бросать" ) ;
|
||||
tie_V2 = dirV2 (regV imperfective first "вяж" "у" "вязал" "вяжи" "вязать") ;
|
||||
turn_V = regV imperfective first "поворачива" "ю" "поворачивал" "поворачивай" "поворачивать" ;
|
||||
vomit_V = regV imperfective firstE "рв" "у" "рвал" "рви" "рвать" ;
|
||||
wash_V2 = dirV2 (regV imperfective first "мо" "ю" "мыл" "мой" "мыть" ) ;
|
||||
wipe_V2 = dirV2 (regV imperfective first "вытира" "ю" "вытирал" "вытирай" "вытирать" );
|
||||
|
||||
|
||||
correct_A = AStaruyj "правильн" "правильнее";
|
||||
dry_A = AMolodoj "сух" "суше";
|
||||
|
||||
|
||||
dull_A = AStaruyj "скучн" "скучнее";
|
||||
far_Adv = mkAdv "далеко";
|
||||
full_A = AStaruyj "полн" "полнее";
|
||||
heavy_A = AStaruyj "тяжел" "тяжелее";
|
||||
left_Ord = (uy_j_EndDecl "лев" ) ** {lock_A = <>};
|
||||
near_A = AMalenkij "близк" "ближе";
|
||||
right_Ord = (uy_j_EndDecl "прав") ** {lock_A = <>} ;
|
||||
rotten_A = AMolodoj "гнил" "гнилее";
|
||||
round_A = AStaruyj "кругл" "круглее";
|
||||
sharp_A = AStaruyj "остр" "острее";
|
||||
smooth_A = AMalenkij "гладк" "глаже";
|
||||
straight_A = AMolodoj "прям" "прямее";
|
||||
wet_A = AStaruyj "мокр" "мокрее";
|
||||
wide_A = AMalenkij "широк" "шире";
|
||||
|
||||
fear_V2 =dirV2 (regV imperfective first "бо" "ю" "боял" "бой" "боять" );
|
||||
paris_PN = mkPN "Париж" Masc Inanimate ;
|
||||
|
||||
|
||||
rock_N = nUroven "кам" ;
|
||||
roof_N = nEdinica "крыш" ;
|
||||
root_N = nUroven "кор" ;
|
||||
rope_N = nNoga "веревк" ;
|
||||
rotten_A = AMolodoj "гнил" "гнилее";
|
||||
round_A = AStaruyj "кругл" "круглее";
|
||||
rub_V2 = dirV2 (regV imperfective firstE "тр" "у" "тёр" "три" "тереть" );
|
||||
rubber_N = nMashina "резин" ;
|
||||
-- rule_N = nChislo "правил" ; -- +++ MG_UR: wrong! +++
|
||||
rule_N = nSlovo "правил" ; -- +++ MG_UR: added +++
|
||||
run_V = regV imperfective first "бега" "ю" "бегал" "бегай" "бегать" ;
|
||||
salt_N = nBol "сол" ;
|
||||
sand_N = mkN "песок" "песка" "песку" "песок" "песком" "песке" "песке" "пески" "песков" "пескам" "песков" "песками" "песках" "песках" masculine inanimate ;
|
||||
say_VS = regV imperfective second "говор" "ю" "говорил" "говори" "говорить" ;
|
||||
school_N = nMashina "школ" ;
|
||||
science_N = nNoga "наук" ;
|
||||
scratch_V2 = dirV2 (regV imperfective first "чеш" "у" "чесал" "чеши" "чесать" ) ;
|
||||
sea_N = nProizvedenie "мор" ;
|
||||
-- see_V2 = dirV2 (regV imperfective second "виж" "у" "видел" "видь" "видеть" );
|
||||
see_V2 = dirV2 (regV imperfective second "ви" "жу" "видел" "видь" "видеть" ); -- changed !!
|
||||
-- seed_N = mkN "семя" "семени" "семении" "семя" "семенем" "семени" "семени" "семена" "семян" "семенам" "семена" "семенами" "семенах" "семенах" neuter inanimate ;
|
||||
seed_N = nVremja "се" ; -- +++ MG_UR: class better than mkN +++
|
||||
seek_V2 = dirV2 (regV imperfective first "ищ" "у" "искал" "ищи" "искать" );
|
||||
sell_V3 = tvDirDir (regV imperfective firstE "прода" "ю" "продавал" "продавай" "продавать" );
|
||||
send_V3 = tvDirDir (regV imperfective first "посыла" "ю" "посылал" "посылай" "посылать" );
|
||||
sew_V = regV imperfective firstE "шь" "ю" "шил" "шей" "шить" ;
|
||||
sharp_A = AStaruyj "остр" "острее";
|
||||
sheep_N = nMashina "овц" ;
|
||||
ship_N = nNol "корабл" ;
|
||||
shirt_N = nNoga "рубашк" ;
|
||||
shoe_N = mkN "туфля" "туфли" "туфле" "туфлю" "туфлей" "туфле" "туфле" "туфли" "туфель" "туфлям" "туфли" "туфлями" "туфлях" "туфлях" masculine inanimate ;
|
||||
shop_N = nTelefon "магазин" ;
|
||||
short_A = AMalenkij "коротк" "короче" ;
|
||||
-- silver_N = nChislo "серебр" ; -- +++ MG_UR: wrong! +++
|
||||
silver_N = nSlovo "серебр" ; -- +++ MG_UR: added +++
|
||||
sing_V = regV imperfective firstE "по" "ю" "пел" "пой" "петь" ;
|
||||
sister_N = nMashina "сестр" ;
|
||||
sit_V = mkV imperfective "сижу" "сидишь" "сидит" "сидим" "сидите" "сидят" "сидел" "сиди" "сидеть" ;
|
||||
skin_N = nEdinica "кож" ;
|
||||
sky_N = mkN "небо" "неба" "небу" "небо" "небом" "небе" "небе" "небеса" "небес" "небесам" "небес" "небесами" "небесах" "небесах" neuter inanimate ;
|
||||
sleep_V = regV imperfective second "сп" "лю" "спал" "спи" "спать" ;
|
||||
small_A = AMalenkij "маленьк" "меньше" ;
|
||||
smell_V = regV imperfective first "пахн" "у" "пахнул" "пахни" "пахнуть" ;
|
||||
smoke_N = nTelefon "дым" ;
|
||||
smooth_A = AMalenkij "гладк" "глаже";
|
||||
snake_N = nTetya "зме" ;
|
||||
snake_N = nTetya"зме" ;
|
||||
snow_N = nAdres "снег" ;
|
||||
sock_N = nPotolok "нос" ;
|
||||
--- son_N = nSyn "сын" ; -- +++ MG_UR: added +++
|
||||
song_N = nTetya "песн" ;
|
||||
speak_V2 = dirV2 (regV imperfective second "говор" "ю" "говорил" "говори" "говорить" );
|
||||
spit_V = regV imperfective firstE "плю" "ю" "плевал" "плюй" "плевать" ;
|
||||
split_V2 = dirV2 (regV imperfective first "разбива" "ю" "разбивал" "разбей" "разбивать" ) ;
|
||||
squeeze_V2 = dirV2 (regV imperfective first "сжима" "ю" "сжимал" "сжимай" "сжимать" ) ;
|
||||
stab_V2 = dirV2 (regV imperfective first "кол" "ю" "колол" "коли" "колоть" ) ;
|
||||
stand_V = regV imperfective second "сто" "ю" "стоял" "стой" "стоять" ;
|
||||
star_N = nMashina "звезд" ;
|
||||
steel_N = nBol "стал" ;
|
||||
stick_N = nNoga "палк" ;
|
||||
stone_N = nNol "камен" ;
|
||||
stop_V = regV imperfective first "останавлива" "ю" "останавливал" "останавливай" "останавливать";
|
||||
stove_N = nBol "печ" ;
|
||||
straight_A = AMolodoj "прям" "прямее";
|
||||
student_N = nTelefon "студент" ;
|
||||
stupid_A = AMolodoj "тупой" "тупее" ;
|
||||
suck_V2 = dirV2 (regV imperfective firstE "сос" "у" "сосал" "соси" "сосать") ;
|
||||
sun_N = mkN "солнце" "солнца" "солнцу" "солнце" "солнцем" "солнце" "солнце" "солнца" "солнц" "солнцам" "солнца" "солнцами" "солнцах" "солнцах" neuter inanimate ;
|
||||
swell_V = regV imperfective first "опуха" "ю" "опухал" "опухай" "опухать" ;
|
||||
swim_V = regV imperfective first "плава" "ю" "плавал" "плавай" "плавать" ;
|
||||
switch8off_V2 = dirV2 (regV imperfective first "выключа" "ю" "выключал" "выключай" "выключать") ;
|
||||
switch8on_V2 = dirV2 (regV imperfective first "включа" "ю" "включал" "включай" "включать") ;
|
||||
table_N = nTelefon "стол" ;
|
||||
tail_N = nTelefon "хвост" ;
|
||||
talk_V3 = mkV3 (regV imperfective second "говор" "ю" "говорил" "говори" "говорить" ) "с" "о" instructive prepositional;
|
||||
teach_V2 = dirV2 (regV imperfective second "уч" "у" "учил" "учи" "учить" );
|
||||
-- teacher_N = nNol "учител" ; -- +++ MG_UR: wrong! +++
|
||||
teacher_N = nUchitel "учител" ; -- +++ MG_UR: added +++
|
||||
television_N = nProizvedenie "телевидени" ;
|
||||
thick_A = AStaruyj "толст" "толще" ;
|
||||
thin_A = AMalenkij "тонк" "тоньше" ;
|
||||
think_V = regV imperfective first "дума" "ю" "думал" "думай" "думать" ;
|
||||
throw_V2 = dirV2 (regV imperfective first "броса" "ю" "бросал" "бросай" "бросать" ) ;
|
||||
tie_V2 = dirV2 (regV imperfective first "вяж" "у" "вязал" "вяжи" "вязать") ;
|
||||
--- time_N = nVremja "вре" ; -- +++ MG_UR: added +++
|
||||
tongue_N = nBank "язык" ;
|
||||
tooth_N = nTelefon "зуб" ;
|
||||
train_N = nAdres "поезд" ;
|
||||
travel_V = regV imperfective first "путешеству" "ю" "путешествовал" "путешествуй" "путешествовать" ;
|
||||
tree_N = nDerevo "дерев" ; -- +++ MG_UR: added +++
|
||||
turn_V = regV imperfective first "поворачива" "ю" "поворачивал" "поворачивай" "поворачивать" ;
|
||||
ugly_A = AStaruyj "некрасив" "некрасивее" ;
|
||||
understand_V2 = dirV2 (regV imperfective first "понима" "ю" "понимал" "понимай" "понимать" );
|
||||
university_N = nTelefon "университет" ;
|
||||
village_N = nMalyariya "деревн" ;
|
||||
--- vocationalschool_N = nUchilishe "училищ" ; -- +++ MG_UR: added +++
|
||||
vomit_V = regV imperfective firstE "рв" "у" "рвал" "рви" "рвать" ;
|
||||
wait_V2 = dirV2 (regV imperfective firstE "жд" "у" "ждал" "жди" "ждать" );
|
||||
walk_V = regV imperfective first "гуля" "ю" "гулял" "гуляй" "гулять" ;
|
||||
--- want_V2 = dirV2 (regV imperfective mixed "хо" "чу" "хотел" "хоти" "хотеть" );
|
||||
war_N = nMashina "войн" ;
|
||||
warm_A = AStaruyj "тёпл" "теплее" ;
|
||||
wash_V2 = dirV2 (regV imperfective first "мо" "ю" "мыл" "мой" "мыть" ) ;
|
||||
watch_V2 = dirV2 (regV imperfective second "смотр" "ю" "смотрел" "смотри" "смотреть" );
|
||||
water_N = nMashina "вод" ;
|
||||
--- way_N = nPut "пут" ; -- +++ MG_UR: added +++
|
||||
wet_A = AStaruyj "мокр" "мокрее";
|
||||
white_A = AStaruyj "бел" "белее" ;
|
||||
wide_A = AMalenkij "широк" "шире";
|
||||
wife_N = nMashina "жен" ;
|
||||
win_V2 = dirV2 (regV imperfective first "выигрыва" "ю" "выигрывал" "выигрывай" "выигрывать" );
|
||||
wind_N = mkN "ветер" "ветра" "ветру" "ветер" "ветром" "ветра" "ветра" "ветров" "ветра" "ветрам" "ветров" "ветрами" "ветрах" "ветрах" masculine inanimate ;
|
||||
-- window_N = nChislo "окн" ; -- +++ MG_UR: wrong! +++
|
||||
window_N = nChislo "окн" "окон" ; -- +++ MG_UR: added +++
|
||||
-- wine_N = nChislo "вин" ; -- +++ MG_UR: wrong! +++
|
||||
wine_N = nSlovo "вин" ; -- +++ MG_UR: added +++
|
||||
-- wing_N = mkN "крыло" "крыла" "крылу" "крыло" "крылом" "крыле" "крыле" "крылья" "крыльев" "крыльям" "крылья" "крыльями" "крыльях" "крыльях" neuter inanimate ;
|
||||
wing_N = nDerevo "крыл" ; -- +++ MG_UR: class better than mkN +++
|
||||
wipe_V2 = dirV2 (regV imperfective first "вытира" "ю" "вытирал" "вытирай" "вытирать" );
|
||||
woman_N = nZhenchina "женщин" ;
|
||||
wonder_VQ = regV imperfective first "интересу" "ю" "интересовал" "интересуй" "интересовать";
|
||||
-- wood_N = nChislo "дерев" ; -- +++ MG_UR: wrong! +++
|
||||
wood_N = nDerevo "дерев" ; -- +++ MG_UR: added +++
|
||||
--- word_N = nSlovo "слов" ; -- +++ MG_UR: added +++
|
||||
worm_N = nNol "черв" ;
|
||||
write_V2 = dirV2 (regV imperfective first "пиш" "у" "писал" "пиши" "писать" );
|
||||
year_N = nAdres "год" ;
|
||||
yellow_A = AStaruyj "жёлт" "желтее" ;
|
||||
young_A = AMolodoj "молод" "моложе";
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -63,27 +63,15 @@ oper
|
||||
singular : Number ;
|
||||
plural : Number ;
|
||||
|
||||
--2 Nouns
|
||||
|
||||
-- Best case: indeclinabe nouns: "кофе", "пальто", "ВУЗ".
|
||||
Animacy: Type ;
|
||||
|
||||
animate: Animacy;
|
||||
inanimate: Animacy;
|
||||
|
||||
|
||||
|
||||
--2 Nouns
|
||||
|
||||
-- Best case: indeclinabe nouns: "кофе", "пальто", "ВУЗ".
|
||||
|
||||
mkN : overload {
|
||||
|
||||
-- The regular function captures the variants for some popular nouns
|
||||
-- endings below:
|
||||
|
||||
mkN : Str -> N ;
|
||||
|
||||
-- This function is for indeclinable nouns.
|
||||
|
||||
mkN : Str -> Gender -> Animacy -> N ;
|
||||
mkIndeclinableNoun: Str -> Gender -> Animacy -> N ;
|
||||
|
||||
-- Worst case - give six singular forms:
|
||||
-- Nominative, Genetive, Dative, Accusative, Instructive and Prepositional;
|
||||
@@ -94,13 +82,17 @@ oper
|
||||
-- to the Nominative or the Genetive one) is actually of no help,
|
||||
-- since there are a lot of exceptions and the gain is just one form less.
|
||||
|
||||
mkN : (nomSg,_,_,_,_,_,_,_,_,_,_,prepPl : Str) -> Gender -> Animacy -> N ;
|
||||
-- +++ MG_UR: new case Prepos2 introduced! +++
|
||||
mkN : (nomSg, genSg, datSg, accSg, instSg, preposSg, prepos2Sg,
|
||||
nomPl, genPl, datPl, accPl, instPl, preposPl, prepos2Pl: Str) -> Gender -> Animacy -> N ;
|
||||
|
||||
-- мужчина, мужчины, мужчине, мужчину, мужчиной, мужчине
|
||||
-- мужчины, мужчин, мужчинам, мужчин, мужчинами, мужчинах
|
||||
|
||||
-- мужчина, мужчины, мужчине, мужчину, мужчиной, мужчине
|
||||
-- мужчины, мужчин, мужчинам, мужчин, мужчинами, мужчинах
|
||||
-- The regular function captures the variants for some popular nouns
|
||||
-- endings below:
|
||||
|
||||
} ;
|
||||
regN : Str -> N ;
|
||||
|
||||
|
||||
-- Here are some common patterns. The list is far from complete.
|
||||
@@ -115,32 +107,71 @@ oper
|
||||
nTetya : Str -> N ; -- feminine, animate, ending with "-я"
|
||||
nBol : Str -> N ; -- feminine, inanimate, ending with "-ь"(soft sign)
|
||||
|
||||
-- further classes added by Magda Gerritsen and Ulrich Real
|
||||
nSvecha: Str -> N ; -- like nEdinica, but instrumental case with -oj
|
||||
nMat: Str -> N ; -- irregular, changing stem, other example 'daughter'
|
||||
nDoch: Str -> N ; -- like nMat but different instrumental case
|
||||
nLoshad: Str -> N ; -- i-declination but instrumental plural -mi
|
||||
nNoch: Str -> N ; -- like nBol but after ZH no "soft behaviour"
|
||||
|
||||
|
||||
-- Neuter patterns.
|
||||
|
||||
nObezbolivauchee : Str -> N ; -- neutral, inanimate, ending with "-ee"
|
||||
nProizvedenie : Str -> N ; -- neutral, inanimate, ending with "-e"
|
||||
nChislo : Str -> N ; -- neutral, inanimate, ending with "-o"
|
||||
nChislo : Str -> Str -> N ; -- neutral, inanimate, ending with "-o" +++ MG_UR: nChislo now expects two arguments +++
|
||||
nZhivotnoe : Str -> N ; -- masculine, inanimate, ending with "-ень"
|
||||
|
||||
-- further classes added by Magda Gerritsen and Ulrich Real
|
||||
nSlovo: Str -> N ; -- hard consonants and zh, ending with -o
|
||||
nMorje: Str -> N ; -- weak consonants, ending with -e
|
||||
nUchilishe: Str -> N ; -- like nSlovo but because not stressed (betont) of with -e
|
||||
-- nOkno: Str -> N ; -- like nSlovo but without -o- and genetive plural with -o- in between; no longer needed because of nChislo with two arguments +++
|
||||
-- nKreslo: Str -> N ; -- like nSlovo but without -o- and genetive plural with -o- in between; no longer needed because of nChislo with two arguments +++
|
||||
nNebo: Str -> N ; -- irregular, other example 'chudo' (wonder)
|
||||
nDerevo: Str -> N ; -- irregular, change of stem, other example 'krylo' (wing)
|
||||
nVremja: Str -> N ; -- irregular total, the most important ones: 'imja' (name), 'plamja' (flame), 'znamja' (flag), 'semja' (seed)
|
||||
|
||||
|
||||
-- Masculine patterns.
|
||||
|
||||
-- Ending with consonant:
|
||||
nPepel : Str -> N ; -- masculine, inanimate, ending with "-ел"- "пеп-ла"
|
||||
|
||||
nBrat: Str -> N ; -- animate, брат-ья
|
||||
nStul: Str -> N ; -- same as above, but inanimate
|
||||
nMalush : Str -> N ; -- малышей
|
||||
nPotolok : Str -> N ; -- потол-ок - потол-ка
|
||||
|
||||
-- the next four differ in plural nominative and/or accusative form(s) :
|
||||
-- the next four differ in plural nominative and/or accusative form(s) :
|
||||
nBank: Str -> N ; -- банк-и (Nom=Acc)
|
||||
nStomatolog : Str -> N ; -- same as above, but animate
|
||||
nAdres : Str -> N ; -- адрес-а (Nom=Acc)
|
||||
nAdres : Str -> N ; -- адрес-а (Nom=Acc), +++ MG_UR: other examples: 'bereg, vecher, gorod, dom, lec, glaz, poezd' +++
|
||||
nTelefon : Str -> N ; -- телефон-ы (Nom=Acc)
|
||||
|
||||
nNol : Str -> N ; -- masculine, inanimate, ending with "-ь" (soft sign)
|
||||
nUchitel : Str -> N ; -- masculine, animate, ending with "-ь" (soft sign) -- +++ MG_UR: added +++
|
||||
nUroven : Str -> N ; -- masculine, inanimate, ending with "-ень"
|
||||
|
||||
-- further classes added by Magda Gerritsen and Ulrich Real
|
||||
nStol: Str -> N ; -- masculine "standard" declination (most simple case), hard consonants
|
||||
nSlovar : Str -> N ; -- masculine, inanimate, ending soft ending, instrumental case with -jo-
|
||||
nMusej : Str -> N ; -- masculine, inanimate, without ending
|
||||
nDvorec : Str -> N ; -- masculine, inanimate, ending like nEtazh but genetive with -o- and with missing vowel
|
||||
nTovarish : Str -> N ; -- masculine, animate, ending like nEtazh but instrumental case with -e-
|
||||
nMesjac : Str -> N ; -- masculine, inanimate, ending like nDvorec but genitive wiht -e-
|
||||
nGrazhdanin : Str -> N ; -- masculine, animate, ending with "-anin" and change of stem
|
||||
nRebenok : Str -> N ; -- masculine, little beings, change of stem
|
||||
nPut : Str -> N ; -- unique irregular Form, frequent use of the word
|
||||
nGospodin : Str -> N ; -- like nGrazhdanin, but nominative plural ending with -a
|
||||
nDen : Str -> N ; -- masculine, animate, ending with "-ь" (soft sign) but without vowel
|
||||
nDrug : Str -> N ; -- like nBrat, but change of stemm
|
||||
nSyn : Str -> N ; -- like nDrug, but another stem
|
||||
|
||||
-- further classes added by Magda Gerritsen and Ulrich Real
|
||||
-- attention: these are not declension classes but classes in which
|
||||
-- one case differs depending on the preposition used with it!
|
||||
nLes : Str -> N ; -- preposition 'v' requires the case Prepos2
|
||||
nMost : Str -> N ; -- preposition 'na' requires the case Prepos2
|
||||
|
||||
-- Nouns used as functions need a preposition. The most common is with Genitive.
|
||||
|
||||
mkFun : N -> Prep -> N2 ;
|
||||
@@ -149,12 +180,14 @@ oper
|
||||
|
||||
-- Proper names.
|
||||
|
||||
mkPN : overload {
|
||||
mkPN : Str -> PN ;
|
||||
mkPN : Str -> Gender -> Animacy -> PN ; -- "Иван", "Маша"
|
||||
mkPN : N -> PN ;
|
||||
} ;
|
||||
mkPN : Str -> Gender -> Animacy -> PN ; -- "Иван", "Маша"
|
||||
nounPN : N -> PN ;
|
||||
|
||||
-- On the top level, it is maybe $CN$ that is used rather than $N$, and
|
||||
-- $NP$ rather than $PN$.
|
||||
|
||||
mkCN : N -> CN ;
|
||||
mkNP : Str -> Gender -> Animacy -> NP ;
|
||||
|
||||
|
||||
--2 Adjectives
|
||||
@@ -173,15 +206,18 @@ oper
|
||||
-- in the current description, otherwise there would be 32 forms for
|
||||
-- positive degree.
|
||||
|
||||
-- mkA : ( : Str) -> A ;
|
||||
|
||||
-- The regular function captures the variants for some popular adjective
|
||||
-- endings below. The first string agrument is the masculine singular form,
|
||||
-- the second is comparative:
|
||||
-- Invariable adjective is a special case, with only on string needed.
|
||||
|
||||
mkA : overload {
|
||||
mkA : Str -> A ; -- khaki, mini, hindi, netto
|
||||
mkA : Str -> Str -> A ;
|
||||
} ;
|
||||
regA : Str -> Str -> A ;
|
||||
|
||||
|
||||
-- Invariable adjective is a special case.
|
||||
|
||||
adjInvar : Str -> A ; -- khaki, mini, hindi, netto
|
||||
|
||||
-- Some regular patterns depending on the ending.
|
||||
|
||||
@@ -206,6 +242,12 @@ oper
|
||||
-- Syntactic forms are based on the positive forms.
|
||||
|
||||
|
||||
-- mkADeg : A -> Str -> ADeg ;
|
||||
|
||||
-- On top level, there are adjectival phrases. The most common case is
|
||||
-- just to use a one-place adjective.
|
||||
-- ap : A -> IsPostfixAdj -> AP ;
|
||||
|
||||
--2 Adverbs
|
||||
|
||||
-- Adverbs are not inflected.
|
||||
@@ -233,6 +275,8 @@ firstE: Conjugation; -- Verbs with vowel "ё": "даёшь" (give), "пьёшь
|
||||
second: Conjugation; -- "вид-Ишь, вид-Им"
|
||||
mixed: Conjugation; -- "хоч-Ешь - хот-Им"
|
||||
dolzhen: Conjugation; -- irregular
|
||||
foreign: Conjugation; -- foreign words which are used in Russian, +++ MG_UR: added +++
|
||||
|
||||
|
||||
true: Bool;
|
||||
false: Bool;
|
||||
@@ -243,6 +287,17 @@ imperfective: Aspect;
|
||||
perfective: Aspect ;
|
||||
|
||||
|
||||
-- The worst case need 6 forms of the present tense in indicative mood
|
||||
-- ("я бегу", "ты бежишь", "он бежит", "мы бежим", "вы бежите", "они бегут"),
|
||||
-- a past form (singular, masculine: "я бежал"), an imperative form
|
||||
-- (singular, second person: "беги"), an infinitive ("бежать").
|
||||
-- Inherent aspect should also be specified.
|
||||
|
||||
-- mkVerbum : Aspect -> (presentSgP1,presentSgP2,presentSgP3,
|
||||
mkV : Aspect -> (presentSgP1,presentSgP2,presentSgP3,
|
||||
presentPlP1,presentPlP2,presentPlP3,
|
||||
pastSgMasculine,imperative,infinitive: Str) -> V ;
|
||||
|
||||
-- Common conjugation patterns are two conjugations:
|
||||
-- first - verbs ending with "-ать/-ять" and second - "-ить/-еть".
|
||||
-- Instead of 6 present forms of the worst case, we only need
|
||||
@@ -253,38 +308,19 @@ perfective: Aspect ;
|
||||
-- "я люб-лю", "ты люб-ишь". Stems shoud be the same.
|
||||
-- So the definition for verb "любить" looks like:
|
||||
-- regV Imperfective Second "люб" "лю" "любил" "люби" "любить";
|
||||
--
|
||||
-- There is no one-argument case.
|
||||
|
||||
mkV : overload {
|
||||
mkV : Aspect -> Conjugation -> (stemPrsSgP1,endPrsSgP1,pastSgP1,imp,inf : Str) -> V ;
|
||||
-- The worst case need 6 forms of the present tense in indicative mood
|
||||
-- ("я бегу", "ты бежишь", "он бежит", "мы бежим", "вы бежите", "они бегут"),
|
||||
-- a past form (singular, masculine: "я бежал"), an imperative form
|
||||
-- (singular, second person: "беги"), an infinitive ("бежать").
|
||||
-- Inherent aspect should also be specified.
|
||||
regV :Aspect -> Conjugation -> (stemPresentSgP1,endingPresentSgP1,
|
||||
pastSgP1,imperative,infinitive : Str) -> V ;
|
||||
|
||||
mkV : Aspect -> (presSgP1,presSgP2,presSgP3,presPlP1,presPlP2,presPlP3,pastSgMasc,imp,inf: Str) -> V ;
|
||||
|
||||
} ;
|
||||
|
||||
|
||||
|
||||
--3 Two-place verbs
|
||||
|
||||
-- Two-place verbs, and the special case with direct object. Notice that
|
||||
-- a particle can be included in a $V$.
|
||||
|
||||
mkV2 : overload {
|
||||
mkV2 : V -> V2 ; -- "видеть", "любить"
|
||||
mkV2 : V -> Str -> Case -> V2 ; -- "войти в дом"; "в", accusative
|
||||
} ;
|
||||
|
||||
|
||||
--3 Three-place verbs
|
||||
|
||||
mkV2 : V -> Str -> Case -> V2 ; -- "войти в дом"; "в", accusative
|
||||
mkV3 : V -> Str -> Str -> Case -> Case -> V3 ; -- "сложить письмо в конверт"
|
||||
dirV2 : V -> V2 ; -- "видеть", "любить"
|
||||
tvDirDir : V -> V3 ;
|
||||
mkV3 : V -> Str -> Str -> Case -> Case -> V3 ; -- "сложить письмо в конверт"
|
||||
|
||||
-- The definitions should not bother the user of the API. So they are
|
||||
-- hidden from the document.
|
||||
--.
|
||||
@@ -302,6 +338,7 @@ firstE = FirstE ;
|
||||
second = Second ;
|
||||
mixed = Mixed ;
|
||||
dolzhen = Dolzhen;
|
||||
foreign = Foreign; -- +++ MG_UR: added +++
|
||||
|
||||
true = True;
|
||||
false = False ;
|
||||
@@ -338,9 +375,9 @@ dolzhen = Dolzhen;
|
||||
anim = anim
|
||||
} ** {lock_N = <>};
|
||||
|
||||
|
||||
mk12N = \nomSg, genSg, datSg, accSg, instSg, preposSg,
|
||||
nomPl, genPl, datPl, accPl, instPl, preposPl, g, anim ->
|
||||
-- +++ MG_UR: new case Prepos2 introduced! +++
|
||||
mkN = \nomSg, genSg, datSg, accSg, instSg, preposSg, prepos2Sg,
|
||||
nomPl, genPl, datPl, accPl, instPl, preposPl, prepos2Pl, g, anim ->
|
||||
{
|
||||
s = table {
|
||||
SF Sg Nom => nomSg ;
|
||||
@@ -349,16 +386,18 @@ dolzhen = Dolzhen;
|
||||
SF Sg Acc => accSg ;
|
||||
SF Sg Inst => instSg ;
|
||||
SF Sg Prepos => preposSg ;
|
||||
SF Sg Prepos2 => prepos2Sg ;
|
||||
SF Pl Nom => nomPl ;
|
||||
SF Pl Gen => genPl ;
|
||||
SF Pl Dat => datPl ;
|
||||
SF Pl Acc => accPl ;
|
||||
SF Pl Inst => instPl ;
|
||||
SF Pl Prepos => preposPl
|
||||
SF Pl Prepos => preposPl ;
|
||||
SF Pl Prepos2 => prepos2Pl
|
||||
} ;
|
||||
g = g ;
|
||||
anim = anim
|
||||
} ** {lock_N = <>} ;
|
||||
} ** {lock_N = <>} ;
|
||||
|
||||
|
||||
regN = \ray ->
|
||||
@@ -378,28 +417,42 @@ regN = \ray ->
|
||||
"ее" => nObezbolivauchee ray ;
|
||||
"ое" => nZhivotnoe ray ;
|
||||
_ => nProizvedenie ray };
|
||||
"о" => nChislo ray;
|
||||
-- "о" => nChislo ray ; +++ MG_UR: commented out +++
|
||||
_=> nStomatolog ray
|
||||
}
|
||||
in
|
||||
rays ;
|
||||
|
||||
|
||||
|
||||
nMashina = \s -> aEndInAnimateDecl s ** {lock_N = <>};
|
||||
nEdinica = \s -> ej_aEndInAnimateDecl s ** {lock_N = <>};
|
||||
nZhenchina = \s -> (aEndAnimateDecl s) ** { g = Fem ; anim = Animate } ** {lock_N = <>};
|
||||
nNoga = \s -> aEndG_K_KH_Decl s ** {lock_N = <>};
|
||||
nMalyariya = \s -> i_yaEndDecl s ** {lock_N = <>};
|
||||
nMalyariya = \s -> i_yaEndDecl s ** {lock_N = <>};
|
||||
nTetya = \s -> (yaEndAnimateDecl s) ** {g = Fem; anim = Animate; lock_N = <>} ;
|
||||
nBol = \s -> softSignEndDeclFem s ** {lock_N = <>};
|
||||
|
||||
-- Neuter patterns.
|
||||
-- further classes added by Magda Gerritsen and Ulrich Real
|
||||
nSvecha = \s -> oj_aEndInAnimateDecl s ** {lock_N = <>};
|
||||
nMat = \s -> irregStemAnimateDecl s ** {g = Fem; anim = Animate; lock_N = <>};
|
||||
nDoch = \s -> irregStemAnimateDeclInstr_MI s ** {g = Fem; anim = Animate; lock_N = <>};
|
||||
nLoshad = \s -> softSignEndDeclFemInstr_MI s ** {g = Fem; anim = Animate; lock_N = <>};
|
||||
nNoch = \s -> softSignEndDeclFemInanimate_ZH s ** {g = Fem; anim = Inanimate; lock_N = <>};
|
||||
|
||||
|
||||
-- Neuter patterns.
|
||||
nObezbolivauchee = \s -> eeEndInAnimateDecl s ** {lock_N = <>};
|
||||
nZhivotnoe = \s -> oeEndAnimateDecl s ** {lock_N = <>};
|
||||
nProizvedenie = \s -> eEndInAnimateDecl s ** {lock_N = <>};
|
||||
nChislo = \s -> oEndInAnimateDecl s ** {lock_N = <>};
|
||||
nChislo = \s, o -> oEndInAnimateDecl3 s o ** {lock_N = <>}; -- +++ MG_UR: nChislo now expects two arguments +++
|
||||
|
||||
-- further classes added by Magda Gerritsen and Ulrich Real
|
||||
nSlovo = \s -> hardCons_ZHInAnimateDecl s ** {lock_N = <>};
|
||||
nMorje = \s -> weakConsInAnimateDecl s ** {lock_N = <>};
|
||||
nUchilishe = \s -> hardCons_ZHInAnimateDeclE s ** {lock_N = <>};
|
||||
nNebo = \s -> irregPlInAnimateDecl s ** {lock_N = <>};
|
||||
nDerevo = \s -> irregPl_StemInAnimateDecl s ** {lock_N = <>};
|
||||
nVremja = \s -> irregTotalInAnimateDecl s ** {lock_N = <>};
|
||||
|
||||
|
||||
-- Masculine patterns.
|
||||
@@ -416,8 +469,28 @@ regN = \ray ->
|
||||
nPepel = \s -> nullEndInAnimateDeclPepel s ** {lock_N = <>};
|
||||
|
||||
nNol = \s -> softSignEndDeclMasc s ** {lock_N = <>};
|
||||
nUchitel = \s -> softSignEndDeclMascAnimate s ** {lock_N = <>}; -- +++ MG_UR: added +++
|
||||
nUroven = \s -> EN_softSignEndDeclMasc s ** {lock_N = <>};
|
||||
|
||||
-- further classes added by Magda Gerritsen and Ulrich Real
|
||||
nStol = \s -> nullEndDecl s ** {lock_N = <>};
|
||||
nSlovar = \s -> softSignEndDeclMascInAnimateInstrJO s ** {lock_N = <>};
|
||||
nMusej = \s -> nullEndInAnimateDeclSoft s ** {lock_N = <>};
|
||||
nDvorec = \s -> ZH_EndInAnimateDeclSoftGenOWithout s ** {lock_N = <>};
|
||||
nTovarish = \s -> ZH_EndAnimateDeclSoftInstrE s ** {lock_N = <>};
|
||||
nMesjac = \s -> ZH_EndInAnimateDeclSoftGenE s ** {lock_N = <>};
|
||||
nGrazhdanin = \s -> PlStemChangeAnimateDecl s ** {lock_N = <>};
|
||||
nRebenok = \s -> LittleAnimalDecl s ** {lock_N = <>};
|
||||
nPut = \s -> UniqueIrregularDecl s ** {lock_N = <>};
|
||||
nGospodin = \s -> A_PlStemChangeAnimateDecl s ** {lock_N = <>};
|
||||
nDen = \s -> softSignEndDeclMascInAnimateGenEWithout s ** {lock_N = <>};
|
||||
nDrug = \s -> nullEndAnimateDeclDrug s** {lock_N = <>};
|
||||
nSyn = \s -> nullEndAnimateDeclSyn s** {lock_N = <>};
|
||||
|
||||
-- preposition types added by Magda Gerritsen and Ulrich Real
|
||||
nLes = \s -> preposition_V s ** {lock_N = <>};
|
||||
nMost = \s -> preposition_Na s ** {lock_N = <>};
|
||||
|
||||
|
||||
-- An individual-valued function is a common noun together with the
|
||||
-- preposition prefixed to its argument ("клZ+ о' дома").
|
||||
@@ -437,22 +510,16 @@ regN = \ray ->
|
||||
mkN3 f p r = (UseN f) ** {s2 = p.s ; c=p.c; s3=r.s ; c2=r.c; lock_N3 = <>} ;
|
||||
|
||||
|
||||
mk3PN = \ivan, g, anim ->
|
||||
mkPN = \ivan, g, anim ->
|
||||
case g of {
|
||||
Masc => mkProperNameMasc ivan anim ;
|
||||
_ => mkProperNameFem ivan anim
|
||||
} ** {lock_PN =<>};
|
||||
nounPN n = {s=\\c => n.s! SF Sg c; anim=n.anim; g=n.g; lock_PN=<>};
|
||||
|
||||
-- On the top level, it is maybe $CN$ that is used rather than $N$, and
|
||||
-- $NP$ rather than $PN$.
|
||||
mkCN = UseN;
|
||||
|
||||
makeCN : N -> CN ;
|
||||
makeNP : Str -> Gender -> Animacy -> NP ;
|
||||
|
||||
makeCN = UseN;
|
||||
|
||||
makeNP = \x,y,z -> UsePN (mk3PN x y z) ;
|
||||
mkNP = \x,y,z -> UsePN (mkPN x y z) ;
|
||||
|
||||
-- Adjective definitions
|
||||
regA = \ray, comp ->
|
||||
@@ -486,7 +553,7 @@ regN = \ray ->
|
||||
-- Verb definitions
|
||||
|
||||
-- mkVerbum = \asp, sgP1, sgP2, sgP3, plP1, plP2, plP3,
|
||||
mk9V = \asp, sgP1, sgP2, sgP3, plP1, plP2, plP3,
|
||||
mkV = \asp, sgP1, sgP2, sgP3, plP1, plP2, plP3,
|
||||
sgMascPast, imperSgP2, inf -> case asp of {
|
||||
Perfective =>
|
||||
mkVerb (perfectiveActivePattern inf imperSgP2
|
||||
@@ -522,8 +589,8 @@ regN = \ray ->
|
||||
VSubj gn => aller.s ! VFORM vox (VSUB gn)
|
||||
}; t = Present ; a = aller.asp ; w = vox ; lock_V = <>} ;
|
||||
-}
|
||||
mk2V2 v p cas = v ** {s2 = p ; c = cas; lock_V2 = <>};
|
||||
dirV2 v = mk2V2 v [] Acc;
|
||||
mkV2 v p cas = v ** {s2 = p ; c = cas; lock_V2 = <>};
|
||||
dirV2 v = mkV2 v [] Acc;
|
||||
|
||||
|
||||
tvDirDir v = mkV3 v "" "" Acc Dat;
|
||||
@@ -535,69 +602,438 @@ regN = \ray ->
|
||||
mkV3 v s1 s2 c1 c2 = v ** {s2 = s1; c = c1; s4 = s2; c2=c2; lock_V3 = <>};
|
||||
|
||||
|
||||
---------------------------
|
||||
-- overloaded API started by AR 6/7/2007
|
||||
|
||||
mkN = overload {
|
||||
mkN : Str -> N = regN ;
|
||||
mkN : Str -> Gender -> Animacy -> N = mkIndeclinableNoun ;
|
||||
mkN : (nomSg,_,_,_,_,_,_,_,_,_,_,prepPl : Str) -> Gender -> Animacy -> N = mk12N ;
|
||||
} ;
|
||||
|
||||
regN : Str -> N ;
|
||||
mkIndeclinableNoun: Str -> Gender -> Animacy -> N ;
|
||||
mk12N : (nomSg, genSg, datSg, accSg, instSg, preposSg,
|
||||
nomPl, genPl, datPl, accPl, instPl, preposPl: Str) -> Gender -> Animacy -> N ;
|
||||
|
||||
|
||||
mkPN = overload {
|
||||
mkPN : Str -> PN = regPN ;
|
||||
mkPN : Str -> Gender -> Animacy -> PN = mk3PN ; -- "Иван", "Маша"
|
||||
mkPN : N -> PN = nounPN ;
|
||||
} ;
|
||||
|
||||
regPN : Str -> PN = \s -> nounPN (regN s) ;
|
||||
mk3PN : Str -> Gender -> Animacy -> PN ; -- "Иван", "Маша"
|
||||
nounPN : N -> PN ;
|
||||
|
||||
-- mkADeg : A -> Str -> ADeg ;
|
||||
|
||||
-- On top level, there are adjectival phrases. The most common case is
|
||||
-- just to use a one-place adjective.
|
||||
-- ap : A -> IsPostfixAdj -> AP ;
|
||||
|
||||
mkA = overload {
|
||||
mkA : Str -> A = adjInvar ; -- khaki, mini, hindi, netto
|
||||
mkA : Str -> Str -> A = regA ;
|
||||
} ;
|
||||
|
||||
regA : Str -> Str -> A ;
|
||||
adjInvar : Str -> A ; -- khaki, mini, hindi, netto
|
||||
|
||||
-- mkVerbum : Aspect -> (presentSgP1,presentSgP2,presentSgP3,
|
||||
|
||||
mkV = overload {
|
||||
mkV : Aspect -> Conjugation -> (stemPrsSgP1,endPrsSgP1,pastSgP1,imp,inf : Str) -> V = regV ;
|
||||
mkV : Aspect -> (presSgP1,presSgP2,presSgP3,presPlP1,presPlP2,presPlP3,pastSgMasc,imp,inf: Str) -> V = mk9V ;
|
||||
|
||||
} ;
|
||||
|
||||
regV :Aspect -> Conjugation -> (stemPresentSgP1,endingPresentSgP1,
|
||||
pastSgP1,imperative,infinitive : Str) -> V ;
|
||||
mk9V : Aspect -> (presentSgP1,presentSgP2,presentSgP3,
|
||||
presentPlP1,presentPlP2,presentPlP3,
|
||||
pastSgMasculine,imperative,infinitive: Str) -> V ;
|
||||
|
||||
|
||||
mkV2 = overload {
|
||||
mkV2 : V -> V2 = dirV2 ; -- "видеть", "любить"
|
||||
mkV2 : V -> Str -> Case -> V2 = mk2V2 ; -- "войти в дом"; "в", accusative
|
||||
} ;
|
||||
|
||||
mk2V2 : V -> Str -> Case -> V2 ; -- "войти в дом"; "в", accusative
|
||||
dirV2 : V -> V2 ; -- "видеть", "любить"
|
||||
|
||||
|
||||
|
||||
----2 Parameters
|
||||
----
|
||||
---- To abstract over gender names, we define the following identifiers.
|
||||
--
|
||||
--oper
|
||||
-- Gender : Type ;
|
||||
--
|
||||
-- human : Gender ;
|
||||
-- nonhuman : Gender ;
|
||||
-- masculine : Gender ;
|
||||
--
|
||||
---- To abstract over number names, we define the following.
|
||||
--
|
||||
-- Number : Type ;
|
||||
--
|
||||
-- singular : Number ;
|
||||
-- plural : Number ;
|
||||
--
|
||||
---- To abstract over case names, we define the following.
|
||||
--
|
||||
-- Case : Type ;
|
||||
--
|
||||
-- nominative : Case ;
|
||||
-- genitive : Case ;
|
||||
--
|
||||
---- Prepositions are used in many-argument functions for rection.
|
||||
--
|
||||
-- Preposition : Type ;
|
||||
--
|
||||
--
|
||||
----2 Nouns
|
||||
--
|
||||
---- Worst case: give all four forms and the semantic gender.
|
||||
--
|
||||
-- mkN : (man,men,man's,men's : Str) -> N ;
|
||||
--
|
||||
---- The regular function captures the variants for nouns ending with
|
||||
---- "s","sh","x","z" or "y": "kiss - kisses", "flash - flashes";
|
||||
---- "fly - flies" (but "toy - toys"),
|
||||
--
|
||||
-- regN : Str -> N ;
|
||||
--
|
||||
---- In practice the worst case is just: give singular and plural nominative.
|
||||
--
|
||||
-- mk2N : (man,men : Str) -> N ;
|
||||
--
|
||||
---- All nouns created by the previous functions are marked as
|
||||
---- $nonhuman$. If you want a $human$ noun, wrap it with the following
|
||||
---- function:
|
||||
--
|
||||
-- genderN : Gender -> N -> N ;
|
||||
--
|
||||
----3 Compound nouns
|
||||
----
|
||||
---- A compound noun ia an uninflected string attached to an inflected noun,
|
||||
---- such as "baby boom", "chief executive officer".
|
||||
--
|
||||
-- compoundN : Str -> N -> N ;
|
||||
--
|
||||
--
|
||||
----3 Relational nouns
|
||||
----
|
||||
---- Relational nouns ("daughter of x") need a preposition.
|
||||
--
|
||||
-- mkN2 : N -> Preposition -> N2 ;
|
||||
--
|
||||
---- The most common preposition is "of", and the following is a
|
||||
---- shortcut for regular relational nouns with "of".
|
||||
--
|
||||
-- regN2 : Str -> N2 ;
|
||||
--
|
||||
---- Use the function $mkPreposition$ or see the section on prepositions below to
|
||||
---- form other prepositions.
|
||||
----
|
||||
---- Three-place relational nouns ("the connection from x to y") need two prepositions.
|
||||
--
|
||||
-- mkN3 : N -> Preposition -> Preposition -> N3 ;
|
||||
--
|
||||
--
|
||||
----3 Relational common noun phrases
|
||||
----
|
||||
---- In some cases, you may want to make a complex $CN$ into a
|
||||
---- relational noun (e.g. "the old town hall of").
|
||||
--
|
||||
-- cnN2 : CN -> Preposition -> N2 ;
|
||||
-- cnN3 : CN -> Preposition -> Preposition -> N3 ;
|
||||
--
|
||||
----
|
||||
----3 Proper names and noun phrases
|
||||
----
|
||||
---- Proper names, with a regular genitive, are formed as follows
|
||||
--
|
||||
-- regPN : Str -> Gender -> PN ; -- John, John's
|
||||
--
|
||||
---- Sometimes you can reuse a common noun as a proper name, e.g. "Bank".
|
||||
--
|
||||
-- nounPN : N -> PN ;
|
||||
--
|
||||
---- To form a noun phrase that can also be plural and have an irregular
|
||||
---- genitive, you can use the worst-case function.
|
||||
--
|
||||
-- mkNP : Str -> Str -> Number -> Gender -> NP ;
|
||||
--
|
||||
----2 Adjectives
|
||||
--
|
||||
---- Non-comparison one-place adjectives need two forms: one for
|
||||
---- the adjectival and one for the adverbial form ("free - freely")
|
||||
--
|
||||
-- mkA : (free,freely : Str) -> A ;
|
||||
--
|
||||
---- For regular adjectives, the adverbial form is derived. This holds
|
||||
---- even for cases with the variation "happy - happily".
|
||||
--
|
||||
-- regA : Str -> A ;
|
||||
--
|
||||
----3 Two-place adjectives
|
||||
----
|
||||
---- Two-place adjectives need a preposition for their second argument.
|
||||
--
|
||||
-- mkA2 : A -> Preposition -> A2 ;
|
||||
--
|
||||
---- Comparison adjectives may two more forms.
|
||||
--
|
||||
-- ADeg : Type ;
|
||||
--
|
||||
-- mkADeg : (good,better,best,well : Str) -> ADeg ;
|
||||
--
|
||||
---- The regular pattern recognizes two common variations:
|
||||
---- "-e" ("rude" - "ruder" - "rudest") and
|
||||
---- "-y" ("happy - happier - happiest - happily")
|
||||
--
|
||||
-- regADeg : Str -> ADeg ; -- long, longer, longest
|
||||
--
|
||||
---- However, the duplication of the final consonant is nor predicted,
|
||||
---- but a separate pattern is used:
|
||||
--
|
||||
-- duplADeg : Str -> ADeg ; -- fat, fatter, fattest
|
||||
--
|
||||
---- If comparison is formed by "more, "most", as in general for
|
||||
---- long adjective, the following pattern is used:
|
||||
--
|
||||
-- compoundADeg : A -> ADeg ; -- -/more/most ridiculous
|
||||
--
|
||||
---- From a given $ADeg$, it is possible to get back to $A$.
|
||||
--
|
||||
-- adegA : ADeg -> A ;
|
||||
--
|
||||
--
|
||||
----2 Adverbs
|
||||
--
|
||||
---- Adverbs are not inflected. Most lexical ones have position
|
||||
---- after the verb. Some can be preverbal (e.g. "always").
|
||||
--
|
||||
-- mkAdv : Str -> Adv ;
|
||||
-- mkAdV : Str -> AdV ;
|
||||
--
|
||||
---- Adverbs modifying adjectives and sentences can also be formed.
|
||||
--
|
||||
-- mkAdA : Str -> AdA ;
|
||||
--
|
||||
----2 Prepositions
|
||||
----
|
||||
---- A preposition as used for rection in the lexicon, as well as to
|
||||
---- build $PP$s in the resource API, just requires a string.
|
||||
--
|
||||
-- mkPreposition : Str -> Preposition ;
|
||||
-- mkPrep : Str -> Prep ;
|
||||
--
|
||||
---- (These two functions are synonyms.)
|
||||
--
|
||||
----2 Verbs
|
||||
----
|
||||
---- Except for "be", the worst case needs five forms: the infinitive and
|
||||
---- the third person singular present, the past indicative, and the
|
||||
---- past and present participles.
|
||||
--
|
||||
-- mkV : (go, goes, went, gone, going : Str) -> V ;
|
||||
--
|
||||
---- The regular verb function recognizes the special cases where the last
|
||||
---- character is "y" ("cry - cries" but "buy - buys") or "s", "sh", "x", "z"
|
||||
---- ("fix - fixes", etc).
|
||||
--
|
||||
-- regV : Str -> V ;
|
||||
--
|
||||
---- The following variant duplicates the last letter in the forms like
|
||||
---- "rip - ripped - ripping".
|
||||
--
|
||||
-- regDuplV : Str -> V ;
|
||||
--
|
||||
---- There is an extensive list of irregular verbs in the module $IrregularEng$.
|
||||
---- In practice, it is enough to give three forms,
|
||||
---- e.g. "drink - drank - drunk", with a variant indicating consonant
|
||||
---- duplication in the present participle.
|
||||
--
|
||||
-- irregV : (drink, drank, drunk : Str) -> V ;
|
||||
-- irregDuplV : (get, got, gotten : Str) -> V ;
|
||||
--
|
||||
--
|
||||
----3 Verbs with a particle.
|
||||
----
|
||||
---- The particle, such as in "switch on", is given as a string.
|
||||
--
|
||||
-- partV : V -> Str -> V ;
|
||||
--
|
||||
----3 Reflexive verbs
|
||||
----
|
||||
---- By default, verbs are not reflexive; this function makes them that.
|
||||
--
|
||||
-- reflV : V -> V ;
|
||||
--
|
||||
----3 Two-place verbs
|
||||
----
|
||||
---- Two-place verbs need a preposition, except the special case with direct object.
|
||||
---- (transitive verbs). Notice that a particle comes from the $V$.
|
||||
--
|
||||
-- mkV2 : V -> Preposition -> V2 ;
|
||||
--
|
||||
-- dirV2 : V -> V2 ;
|
||||
--
|
||||
----3 Three-place verbs
|
||||
----
|
||||
---- Three-place (ditransitive) verbs need two prepositions, of which
|
||||
---- the first one or both can be absent.
|
||||
--
|
||||
-- mkV3 : V -> Preposition -> Preposition -> V3 ; -- speak, with, about
|
||||
-- dirV3 : V -> Preposition -> V3 ; -- give,_,to
|
||||
-- dirdirV3 : V -> V3 ; -- give,_,_
|
||||
--
|
||||
----3 Other complement patterns
|
||||
----
|
||||
---- Verbs and adjectives can take complements such as sentences,
|
||||
---- questions, verb phrases, and adjectives.
|
||||
--
|
||||
-- mkV0 : V -> V0 ;
|
||||
-- mkVS : V -> VS ;
|
||||
-- mkV2S : V -> Str -> V2S ;
|
||||
-- mkVV : V -> VV ;
|
||||
-- mkV2V : V -> Str -> Str -> V2V ;
|
||||
-- mkVA : V -> VA ;
|
||||
-- mkV2A : V -> Str -> V2A ;
|
||||
-- mkVQ : V -> VQ ;
|
||||
-- mkV2Q : V -> Str -> V2Q ;
|
||||
--
|
||||
-- mkAS : A -> AS ;
|
||||
-- mkA2S : A -> Str -> A2S ;
|
||||
-- mkAV : A -> AV ;
|
||||
-- mkA2V : A -> Str -> A2V ;
|
||||
--
|
||||
---- Notice: categories $V2S, V2V, V2A, V2Q$ are in v 1.0 treated
|
||||
---- just as synonyms of $V2$, and the second argument is given
|
||||
---- as an adverb. Likewise $AS, A2S, AV, A2V$ are just $A$.
|
||||
---- $V0$ is just $V$.
|
||||
--
|
||||
-- V0, V2S, V2V, V2A, V2Q : Type ;
|
||||
-- AS, A2S, AV, A2V : Type ;
|
||||
--
|
||||
--
|
||||
----2 Definitions of paradigms
|
||||
----
|
||||
---- The definitions should not bother the user of the API. So they are
|
||||
---- hidden from the document.
|
||||
----.
|
||||
--
|
||||
-- Gender = MorphoEng.Gender ;
|
||||
-- Number = MorphoEng.Number ;
|
||||
-- Case = MorphoEng.Case ;
|
||||
-- human = Masc ;
|
||||
-- nonhuman = Neutr ;
|
||||
-- masculine = Masc ;
|
||||
-- feminine = Fem ;
|
||||
-- singular = Sg ;
|
||||
-- plural = Pl ;
|
||||
-- nominative = Nom ;
|
||||
-- genitive = Gen ;
|
||||
--
|
||||
-- Preposition = Str ;
|
||||
--
|
||||
-- regN = \ray ->
|
||||
-- let
|
||||
-- ra = Predef.tk 1 ray ;
|
||||
-- y = Predef.dp 1 ray ;
|
||||
-- r = Predef.tk 2 ray ;
|
||||
-- ay = Predef.dp 2 ray ;
|
||||
-- rays =
|
||||
-- case y of {
|
||||
-- "y" => y2ie ray "s" ;
|
||||
-- "s" => ray + "es" ;
|
||||
-- "z" => ray + "es" ;
|
||||
-- "x" => ray + "es" ;
|
||||
-- _ => case ay of {
|
||||
-- "sh" => ray + "es" ;
|
||||
-- "ch" => ray + "es" ;
|
||||
-- _ => ray + "s"
|
||||
-- }
|
||||
-- }
|
||||
-- in
|
||||
-- mk2N ray rays ;
|
||||
--
|
||||
-- mk2N = \man,men ->
|
||||
-- let mens = case last men of {
|
||||
-- "s" => men + "'" ;
|
||||
-- _ => men + "'s"
|
||||
-- }
|
||||
-- in
|
||||
-- mkN man men (man + "'s") mens ;
|
||||
--
|
||||
-- mkN = \man,men,man's,men's ->
|
||||
-- mkNoun man man's men men's ** {g = Neutr ; lock_N = <>} ;
|
||||
--
|
||||
-- genderN g man = {s = man.s ; g = g ; lock_N = <>} ;
|
||||
--
|
||||
-- compoundN s n = {s = \\x,y => s ++ n.s ! x ! y ; g=n.g ; lock_N = <>} ;
|
||||
--
|
||||
-- mkN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p} ;
|
||||
-- regN2 n = mkN2 (regN n) (mkPreposition "of") ;
|
||||
-- mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
|
||||
-- cnN2 = \n,p -> n ** {lock_N2 = <> ; c2 = p} ;
|
||||
-- cnN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
|
||||
--
|
||||
-- regPN n g = nameReg n g ** {lock_PN = <>} ;
|
||||
-- nounPN n = {s = n.s ! singular ; g = n.g ; lock_PN = <>} ;
|
||||
-- mkNP x y n g = {s = table {Gen => x ; _ => y} ; a = agrP3 n ;
|
||||
-- lock_NP = <>} ;
|
||||
--
|
||||
-- mkA a b = mkAdjective a a a b ** {lock_A = <>} ;
|
||||
-- regA a = regAdjective a ** {lock_A = <>} ;
|
||||
--
|
||||
-- mkA2 a p = a ** {c2 = p ; lock_A2 = <>} ;
|
||||
--
|
||||
-- ADeg = A ; ----
|
||||
--
|
||||
-- mkADeg a b c d = mkAdjective a b c d ** {lock_A = <>} ;
|
||||
--
|
||||
-- regADeg happy =
|
||||
-- let
|
||||
-- happ = init happy ;
|
||||
-- y = last happy ;
|
||||
-- happie = case y of {
|
||||
-- "y" => happ + "ie" ;
|
||||
-- "e" => happy ;
|
||||
-- _ => happy + "e"
|
||||
-- } ;
|
||||
-- happily = case y of {
|
||||
-- "y" => happ + "ily" ;
|
||||
-- _ => happy + "ly"
|
||||
-- } ;
|
||||
-- in mkADeg happy (happie + "r") (happie + "st") happily ;
|
||||
--
|
||||
-- duplADeg fat =
|
||||
-- mkADeg fat
|
||||
-- (fat + last fat + "er") (fat + last fat + "est") (fat + "ly") ;
|
||||
--
|
||||
-- compoundADeg a =
|
||||
-- let ad = (a.s ! AAdj Posit)
|
||||
-- in mkADeg ad ("more" ++ ad) ("most" ++ ad) (a.s ! AAdv) ;
|
||||
--
|
||||
-- adegA a = a ;
|
||||
--
|
||||
-- mkAdv x = ss x ** {lock_Adv = <>} ;
|
||||
-- mkAdV x = ss x ** {lock_AdV = <>} ;
|
||||
-- mkAdA x = ss x ** {lock_AdA = <>} ;
|
||||
--
|
||||
-- mkPreposition p = p ;
|
||||
-- mkPrep p = ss p ** {lock_Prep = <>} ;
|
||||
--
|
||||
-- mkV a b c d e = mkVerb a b c d e ** {s1 = [] ; lock_V = <>} ;
|
||||
--
|
||||
-- regV cry =
|
||||
-- let
|
||||
-- cr = init cry ;
|
||||
-- y = last cry ;
|
||||
-- cries = (regN cry).s ! Pl ! Nom ; -- !
|
||||
-- crie = init cries ;
|
||||
-- cried = case last crie of {
|
||||
-- "e" => crie + "d" ;
|
||||
-- _ => crie + "ed"
|
||||
-- } ;
|
||||
-- crying = case y of {
|
||||
-- "e" => case last cr of {
|
||||
-- "e" => cry + "ing" ;
|
||||
-- _ => cr + "ing"
|
||||
-- } ;
|
||||
-- _ => cry + "ing"
|
||||
-- }
|
||||
-- in mkV cry cries cried cried crying ;
|
||||
--
|
||||
-- regDuplV fit =
|
||||
-- let fitt = fit + last fit in
|
||||
-- mkV fit (fit + "s") (fitt + "ed") (fitt + "ed") (fitt + "ing") ;
|
||||
--
|
||||
-- irregV x y z = let reg = (regV x).s in
|
||||
-- mkV x (reg ! VPres) y z (reg ! VPresPart) ** {s1 = [] ; lock_V = <>} ;
|
||||
--
|
||||
-- irregDuplV fit y z =
|
||||
-- let
|
||||
-- fitting = (regDuplV fit).s ! VPresPart
|
||||
-- in
|
||||
-- mkV fit (fit + "s") y z fitting ;
|
||||
--
|
||||
-- partV v p = verbPart v p ** {lock_V = <>} ;
|
||||
-- reflV v = {s = v.s ; part = v.part ; lock_V = v.lock_V ; isRefl = True} ;
|
||||
--
|
||||
-- mkV2 v p = v ** {s = v.s ; s1 = v.s1 ; c2 = p ; lock_V2 = <>} ;
|
||||
-- dirV2 v = mkV2 v [] ;
|
||||
--
|
||||
-- mkV3 v p q = v ** {s = v.s ; s1 = v.s1 ; c2 = p ; c3 = q ; lock_V3 = <>} ;
|
||||
-- dirV3 v p = mkV3 v [] p ;
|
||||
-- dirdirV3 v = dirV3 v [] ;
|
||||
--
|
||||
-- mkVS v = v ** {lock_VS = <>} ;
|
||||
-- mkVV v = {
|
||||
-- s = table {VVF vf => v.s ! vf ; _ => variants {}} ;
|
||||
-- isAux = False ; lock_VV = <>
|
||||
-- } ;
|
||||
-- mkVQ v = v ** {lock_VQ = <>} ;
|
||||
--
|
||||
-- V0 : Type = V ;
|
||||
-- V2S, V2V, V2Q, V2A : Type = V2 ;
|
||||
-- AS, A2S, AV : Type = A ;
|
||||
-- A2V : Type = A2 ;
|
||||
--
|
||||
-- mkV0 v = v ** {lock_V = <>} ;
|
||||
-- mkV2S v p = mkV2 v p ** {lock_V2 = <>} ;
|
||||
-- mkV2V v p t = mkV2 v p ** {s4 = t ; lock_V2 = <>} ;
|
||||
-- mkVA v = v ** {lock_VA = <>} ;
|
||||
-- mkV2A v p = mkV2 v p ** {lock_V2A = <>} ;
|
||||
-- mkV2Q v p = mkV2 v p ** {lock_V2 = <>} ;
|
||||
--
|
||||
-- mkAS v = v ** {lock_A = <>} ;
|
||||
-- mkA2S v p = mkA2 v p ** {lock_A = <>} ;
|
||||
-- mkAV v = v ** {lock_A = <>} ;
|
||||
-- mkA2V v p = mkA2 v p ** {lock_A2 = <>} ;
|
||||
--
|
||||
} ;
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ flags coding=utf8 ; optimize=all ;
|
||||
-- Some parameters, such as $Number$, are inherited from $ParamX$.
|
||||
param
|
||||
Gender = Masc | Fem | Neut ;
|
||||
Case = Nom | Gen | Dat | Acc | Inst | Prepos ;
|
||||
Case = Nom | Gen | Dat | Acc | Inst | Prepos | Prepos2 ; -- +++ MG_UR: new case Prepos2 introduced! +++
|
||||
Animacy = Animate | Inanimate ;
|
||||
Voice = Act | Pass ;
|
||||
Aspect = Imperfective | Perfective ;
|
||||
@@ -115,7 +115,8 @@ oper
|
||||
PF Dat _ _ => Dat ;
|
||||
PF Inst _ _ => Inst ;
|
||||
PF Acc _ _ => Acc ;
|
||||
PF Prepos _ _ => Prepos
|
||||
PF Prepos _ _ => Prepos ;
|
||||
PF Prepos2 _ _ => Prepos2 -- +++ MG_UR: added +++
|
||||
} ;
|
||||
|
||||
mkPronForm: Case -> AfterPrep -> Possessive -> PronForm =
|
||||
@@ -293,7 +294,8 @@ oper sam: Refl=
|
||||
Dat => "себе";
|
||||
Acc => "себя";
|
||||
Inst => "собой";
|
||||
Prepos => "себе"
|
||||
Prepos => "себе";
|
||||
Prepos2 => "себе" -- +++ MG_UR: added +++
|
||||
}
|
||||
};
|
||||
|
||||
@@ -410,7 +412,8 @@ oper
|
||||
SF _ Dat => Dat ;
|
||||
SF _ Inst => Inst ;
|
||||
SF _ Acc => Acc ;
|
||||
SF _ Prepos => Prepos
|
||||
SF _ Prepos => Prepos ;
|
||||
SF _ Prepos2 => Prepos2 -- +++ MG_UR: added +++
|
||||
} ;
|
||||
|
||||
}
|
||||
|
||||
@@ -49,7 +49,8 @@ lin
|
||||
i_Pron = pronYa ;
|
||||
if_Subj = ss "если" ;
|
||||
in8front_Prep = { s = "перед" ; c = Inst};
|
||||
in_Prep = { s = "в" ; c = Prepos };
|
||||
--in_Prep = { s = "в" ; c = Prepos };
|
||||
in_Prep = { s = "в" ; c = Prepos2 } ; -- +++ MG_UR: new case Prepos2 introduced! +++
|
||||
it_Pron = pronOno ;
|
||||
less_CAdv = ss "менее" ;
|
||||
many_Det = mnogoSgDet ** {n = Sg; g = (PGen Neut); c= Gen} ;
|
||||
@@ -61,7 +62,8 @@ lin
|
||||
much_Det = mnogoSgDet ** {n = Sg; g = (PGen Neut); c= Gen} ; -- same as previous
|
||||
must_VV = verbDolzhen ;
|
||||
no_Phr = ss ["Нет ."] ;
|
||||
on_Prep = { s = "на" ; c = Prepos };
|
||||
--on_Prep = { s = "на" ; c = Prepos };
|
||||
on_Prep = { s = "на" ; c = Prepos2 }; -- +++ MG_UR: new case Prepos2 introduced! +++
|
||||
one_Quant = odinDet ** {lock_QuantSg = <>; n= Sg; g = PNoGen; c = Nom };
|
||||
--AStaruyj :
|
||||
only_Predet = (uy_j_EndDecl "единственн" ) ** {lock_Predet = <>; n= Sg; g = PNoGen; c = Nom };
|
||||
@@ -131,4 +133,3 @@ lin
|
||||
--- NowhereNP = ss "нигде" ;
|
||||
--- AgentPrep = { s = "" ; c = Nom}; -- missing in Russian
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user