Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
30.06.2007 10:58

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Скажем вместо введения в тему ниже следующие.
Все на форуме, уже раз говорили о построении русского парсера и пока парсеры на ныне сущевствующих платформах еще не могут считаться полноценными, потому как русский язык сложнее и богаче в описаниях действия. Единственное отличия русского языка от европейских то, что к примеру английский язык основывается на контексте, а русский на сути слова, а не его форме (могу ошибаться, но всегда именно это и проглядывается, кто не понял вспомните, кто написал толковый словарь мата на русском языке и почему. Об этом даже анекдот старый был wink  ). Ясное дело, что предложение на парсере начинается по другому, нежели в традиционном варианте. Оно начинается с глагола и связывается с сущевствительным с помощью предлогов и иногда даже наречий, местоимения и так должны занимать свое место. Но если подходить к проблеме еще конкретней, то в русском языке три части речи, а это: сущевствительное, глагол, прилагательное (причем в некторых случаях оно может быть и глаголом); склоняются по падежам, числам ед. и множ., родам, (для глаголов забыл). И плюс ко всему этому каламбуру сущ. и глаголы имеют приставки, суффиксы, а это уже словообразование.
Получается из выше перечисленного возникает три делемы:

  • нужно ли опираться полностью на грамматику языка или использвать уже перенятые традиции парсеров?
  • до какой степени учитывать словообразование и образование словосочетаний?
  • и стоит ли при такой конкретике создавать определенную базу слов русского языка, банк знаний своего рода или бибилиотека?

З.Ы.
Разворачивание этой темы, вставки с приведением грамматики русского языка, может помочь не только мне, но и тем кто хочет написать игру самостоятельно с применением парсера. А с другой стороны вместо того, чтобы говорить вокруг да около лучше бы проанализировали (кто в парсерах хорошо разбирается) и выложили бы свои знания об этом, т.к. без свободного обмена у нас не получится создать хотя бы систему и стандарты для русского парсера и останемся так и дальше довольствоваться самоделками tongue. Это своего рода дружеский пинок с разворотом в другую грань темы.

Неактивен

0    0    #2
30.06.2007 14:02

Nex
Участник (+120, -130)
Зарегистрирован: 11.06.2007
Сообщений: 2053

---

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Не доверю создание "русского парсера" тому, кто допускает столько ошибок.
Чем RTADS не устраивает?

Неактивен

0    0    #3
30.06.2007 21:22

Unreal
Участник (+3)
Зарегистрирован: 13.09.2002
Сообщений: 170

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

[Какой-то невнятный бред пропущен...]

Eten написал:

А с другой стороны вместо того, чтобы говорить вокруг да около лучше бы проанализировали (кто в парсерах хорошо разбирается) и выложили бы свои знания об этом, т.к. без свободного обмена у нас не получится создать хотя бы систему и стандарты для русского парсера и останемся так и дальше довольствоваться самоделками tongue.

Если хочешь, довольствуйся. Если не хочешь, пытайся создать еще один свой самодельный ламерский убогий парсер, который никто кроме тебя никогда не будет использовать.

Уверен, что RTADS и Inform -- это выше твоего самомнения т.к. они существуют и их использовать для таких как ты скучно. Конечно, проще всего в очередной раз компостировать мозги мега-идеей о создании исконне россейского парсера. :-(

Неактивен

0    0    #4
01.07.2007 10:01

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

ну и фиг с вами, не хотите говорить и не надо. А англоязычные только и ориентированны на европейские языки, да и к тому же русский язык намного красочнее, так что заслуживает иметь свой парсер. Считайте, что тема закрыта. sad

Неактивен

0    0    #5
01.07.2007 19:45

Olegus t.Gl.
Участник (+1053, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2879
Вебсайт

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Тема поднималась, и не раз. Например:
https://forum.ifiction.ru/viewtopic.php?id=472
https://forum.ifiction.ru/viewtopic.php?id=557
Много-много лет назад я, помнится, в ходе кое-каких экспериментов довольно успешно реализовал и использовал изложенные в статье «Анализатор команд» идеи...

Неактивен

0    0    #6
01.07.2007 20:13

zerrr
Участник (+21, -5)
Откуда: Красноярск
Зарегистрирован: 20.11.2005
Сообщений: 567

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Стас, ты, конечно,  чересчур  резко и "в штыки" встречаешь "новобранца". Зачем так горячиться? Ну, а сам "новобранец", мог бы удосужиться и использ..... . тут даже "поиск" юзать не надо, чесслово - форум не настолько захламлен. Это раз. (Спасибо Олегусу). А, что до русифицированных Inform и TADS - я так и не услышал вразумительных "фи" от Eten. Неужели трудно было хотя-бы ознакомится? Имхо, (я конечно не программер, зато в теории слегка подкован), по меньшей мере, TADS (с которым я, таки,  ОЗНАКОМИЛСЯ) перекрывает 90 % требований к русспарсеру. Это два. 

А англоязычные только и ориентированны на европейские языки

скорее на АНГЛОЯЗЫЧНЫЕ и ориентированны (Англия и Америка, ЕВРОПОЙ  не являются). Ибо, если ты выбрал время для штудирования топика, ты бы понял, что аналогичные проблемы испытывает, как минимум, немецкий язык.

да и к тому же русский язык намного красочнее

А вот это уже твое ИМХО. Наверняка, г-н путин и м-к задорнофф согласились бы с тобой, но не я.

Отредактировано zerrr (01.07.2007 20:46)

Неактивен

0    0    #7
01.07.2007 20:21

Sus_scrofa
Участник
Откуда: Екатеринбург
Зарегистрирован: 24.08.2005
Сообщений: 19

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

м-к - это мудак, я так понял... :}

Насчет красочности - тут действительно все субъективно. В русском языке богато словообразование, зато в английском самих слов в несколько раз больше...

Неактивен

0    0    #8
01.07.2007 20:40

zerrr
Участник (+21, -5)
Откуда: Красноярск
Зарегистрирован: 20.11.2005
Сообщений: 567

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Sus_scrofa написал:

м-к - это мудак, я так понял... :}

Насчет красочности - тут действительно все субъективно. В русском языке богато словообразование, зато в английском самих слов в несколько раз больше...

Ты правильно понял smile надеюсь "г-н" все тоже поймут ... ПРАВИЛЬНО.

Отредактировано zerrr (01.07.2007 20:40)

Неактивен

0    0    #9
01.07.2007 21:08

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Приносим свои глубочайшие извенения всем кому высказал, но прежде чем создавать тему я уже успел порыться в парочке разделов и не нашел вразумительных ответов. Не спорю ТАДС хорошо работает с русским языком, но я что-то не припомню у него богатого словообразования русского языка. Если дествительно хотите "фи", то как он поймет ли слова одинаково: положить, ложить (вместо класть). Если да, то можно вешаться hmm .
Почему эту тему поднял, причина проста: 1) самому нужно для СТК, 2) Другим разжевать все подводные камни, 3) создать некую библиотеку (не dll) словообразования русского языка для парсера.
К моему сожалению (может и не доглядел) всегда слова определяются *глад*, ясное дело что в переди может стоять только приставка (по крайней мере надеюсь), а в конце суффикс и окончание. Да и говоря, проще, любой сможет заставить парсер определять слова в нужном положении (типа сначала глагол, а потом все остальное), вы это и сами видите. А сложное - это дать автора, как можно большую разгрузку от раздумия над вариациями слова, ограничения вариаций (в отдельных ситуациях). Где, вы господа и дамы, в ТАДС видили малое кол-во слов определяющих все богатство словообразования, прога это должна делать за нас. Тогда меньше и игроку будет парится из-за того, что автор ленив или не может (в силу своих причин) задать нужное кол-во словосочетаний.
Хотите больше не получать самодельных платформ, так дайте, то чего нам не хватает - ИНФОРМАЦИИ! На мой взгляд даже нормальный парсер не только должен давать возможность управления объектами через описание действий, как в ТАДС, но и уметь правильно генерировать словообразование в соответствие с требуемыми словосочетаниями.
З.Ы.
Не бывает ничего не возможного, бывают люди, которые не знают, не хотят или не верят, что - это возможно. К сожалению таких большинство. wink

Неактивен

0    0    #10
01.07.2007 21:13

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Для тех кто все таки не понял, то задам вопрос конкретнй: Что вам мешает создать базу знаний о парсере, всех словах русского языка, как парсер должен их реализовывать, какие загвоздки в нащих словах и как их вам удалось решить или как вы их предлагаете решить, и т.д. в том же духе?

Неактивен

0    0    #11
01.07.2007 21:50

zerrr
Участник (+21, -5)
Откуда: Красноярск
Зарегистрирован: 20.11.2005
Сообщений: 567

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Eten написал:

Если дествительно хотите "фи", то как он поймет ли слова одинаково: положить, ложить (вместо класть). Если да, то можно вешаться hmm .

Нукося-нукося... как ты, в основном, используешь  глагол (как ИГРОК) больше "Класть" или "Положить"? Покласть партбилет на стол или, таки,  положить его?  Если тебе так необходимо "класть деньгу в банк ",  то никто тебе не мешает создать в ТАДС новый глагол : класть, помещать, вкладывать, пристраивать и т.д.  Если "выкласть печку"  то, ради бога, - привяжи к "построить, выстроить, сделать .и т.д .. " В чем проблема? Если хочешь сделать Игрока грамотней за счет привязки к единственно верному глаголу, то тебе не сюда, а в сообщество почитателей Ожегова.

Неактивен

0    0    #12
01.07.2007 22:37

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

как ты, в основном, используешь  глагол (как ИГРОК) больше "Класть" или "Положить"? Покласть партбилет на стол или, таки,  положить его?  Если тебе так необходимо "класть деньгу в банк ",  то никто тебе не мешает создать в ТАДС новый глагол : класть, помещать, вкладывать, пристраивать и т.д.  Если "выкласть печку"  то, ради бога, - привяжи к "построить, выстроить, сделать .и т.д .. " В чем проблема?

Ды к вот-с, положить книгу на стол - это нормальное словосояетание, а ложить книгу на стол - полная безгамотность (без всякого там Ожегова), должна быть логика, ты ж на русском языке играешь, а не пупуаском. Да и в русском языке применение класть вмсето ложить, я намекал на подводные камни нашего языка. Поэтому с приставками я его еще ни разу не видел ( не когда бы не подумал, что через ТАДС можно создать нормальный новый русский язык yikes). С таким применением слов я могу заставить игрока записать так: насрать билет на стол (грязно но смысл дествия тотже, не чуешь пробела в своем примере wink ). Ясный пень, что писать в ТАДС граммотный парсер, то же самое что научить обезъяну ехать (получится, но каковы последствия, о-о-о-о...даже говорить не стану). И еще в ТАДС такую безграмостность, как применение не допустимых окончаний к слову "класть" самая норма вещей (прошу не обижаться всех кто почитает ТАДС, в качестве Идола).
Олегусу спасибо за статью, но я в самых первых мысдях сделал удар на словообразование и всех его подводных камнях. Мне вот, к примеру запарило бы писать в ТАДСе все варианты слов и ужасаться от того, что я не могу конкретизировать некоторые моменты (кто не согласен вспомните чему в школе нас учили, чего мы так ненавистно запоминали, исключение тоже входит в этот список) или задать с легкостью нормальную вереницу словосочетаний; и знать, что пользователь написав откровенную лобуду не сможет получить должного резултата, а будет действительно говорить с книгу, а то так можно сказать, следующее: бухай на юг, вкури запад, катись наверх, резче копай лопатой по голове троля ( что нормальным русским языком можно написать бей лопатой по голове тролля) или залей в глаз кулаком (как можно кулак залить, парсер просто не поймет),  еби гнома лопатой ( извините за мат, но так тоже может быть, хотя слово обозначаеи совершенно другое действие, нежели убить или бить, да хоть прибей), а вот те новый глагол затрактори гнома (убей гнома), трахни чай (ухлопай чай, быстро выпей чай), ....; ладно не буду больше приводить примеров, а то брань какая-то получается (вспомните программу телевизионную "Городок", там на тему новых слов прикол сняли). Вот и приставь себе, zerrr, что сел мало-мальски знакомый чел, сел играть в твой интересный (по сюжету) квест, а ты ему говоришь надо не бить тролля, а заграбить или затрактарить, а может зафлудить лопатой тролля, а? wink Я лично парился в одной квестухе ТАДСа, является переводом на русский на тему НФ и написана еще в самых 1990 годов, я запарился с попыткой соединить вилку с аккумулятором Мастер 2000 (не было у меня другого способа в голове, как это сделать), а надо было всего лишь воткнуть - это нормальная дилема, а с твоим примером, придется не нароком насоединить вилку в аккумулятор или может наткнуть ее в аккумулятор. Вот те и Ожегов и то постыдышься такой вариант словосочетания на публике показывать. Единственное исключение - это когда ты описываешь действительно мир, к примеру по блатному и там слова будут иметь другой смысл, тогда и ползователь наверняка уже будет знать, как нужно сформулировать свое действие. Вот, поэтому мое "фи" всегда в силе! big_smile

Неактивен

0    0    #13
01.07.2007 23:14

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Обращени известному автору статьи https://ifiction.ru/a/ifparser.html про Анализатор команд.А нет ли у вас еще на жестком самого исходника? Паскаль еще со школы  помню. Да и мысль излагается интересная, только слова у нас не квадратные и им не хватает словообразования и всего что с ними конкретно не хватает (а чем уже упоминалось, но не было реализовано). Про приставки говорить, пока не буду, щас увы всю тему дочитать времени нету, только завтра, а так половину проблемы уже решали - это круто! tongue

Неактивен

0    0    #14
02.07.2007 00:06

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Eten написал:

как ты, в основном, используешь  глагол (как ИГРОК) больше "Класть" или "Положить"? Покласть партбилет на стол или, таки,  положить его?  Если тебе так необходимо "класть деньгу в банк ",  то никто тебе не мешает создать в ТАДС новый глагол : класть, помещать, вкладывать, пристраивать и т.д.  Если "выкласть печку"  то, ради бога, - привяжи к "построить, выстроить, сделать .и т.д .. " В чем проблема?

Ды к вот-с, положить книгу на стол - это нормальное словосояетание, а ложить книгу на стол - полная безгамотность (без всякого там Ожегова)

О, блин! Да у нас пол-района так говорит! (А как говорит вторая половина, и воспроизвести-то страшно;)).

Eten написал:

Ясный пень, что писать в ТАДС граммотный парсер, то же самое что научить обезъяну ехать (получится, но каковы последствия, о-о-о-о...даже говорить не стану). И еще в ТАДС такую безграмостность, как применение не допустимых окончаний к слову "класть" самая норма вещей (прошу не обижаться всех кто почитает ТАДС, в качестве Идола).

Мне вот это совсем не ясный пень. Да, в TADS надо ручками довольно солидно поработать, чтобы задать достаточное количество синонимов для команд, встречающихся в игре, и не напортачить с грамматикой, но, во-первых, львиная доля работы уже проделана ГрАндом (и вполне себе грамотно, между прочим), а во-вторых, намек про последствия вообще, честно говоря, непонятен. А насчет распознавания "ложить"... Все-таки ИЛ - это игра, а не обучающая русскому языку программа. Поэтому, если парсер, наряду со всеми возможными грамотными сочетаниями, воспринимает еще и некоторую часть неграмотных, это можно записать ему только в плюс. ИМХО, конечно (хотя многие игроки, уверен, со мною согласятся).

"Применение недопустимых окончаний к слову класть" в (R)TADS - это не "самая норма вещей", а исключительно желание/нежелание автора: какие синонимы для глагола (и других объектов) автор сочтет нужным прописать, те и будут распознаваться. Захочет "ложить" - будет "ложить", не захочет - не будет. Говорю Вам это без всякого идолопоклонничества.

Что касается реализации в парсере всего богатства русского языка... По-моему, уважаемый Eten, Вы что-то путаете. В своей основе парсер не должен блистать литературными изысками, его задача - максимально правильно воспринять команду игрока. Стандартом де-факто в ИЛ (не только в русской) стал парсер, воспринимающий следующие форматы команды: (a) глагол без всего (напр., "ждать"); (b) глагол + объект ("взять кирпич"); (c) глагол + объект (+ предлог) + объект ("надеть кольцо на палец", "ударить тролля мечом"). Связано это еще, помимо прочего, и с удобством для игрока (все-таки более-менее короткие команды набирать в общем случае проще и удобнее, чем "навороченные", особенно, если это приходится делать многократно). И (R)TADS, и Inform заточены именно под такой формат команд, и дело свое, надо сказать, знают туго. Конечно, можно посетовать на то, что такой формат общения слишком ограничен, однако, смею Вас заверить, задача полнотекстового распознавания ввода игрока (в смысле, распознавание всех возможных языковых конструкций, или хотя бы более-менее обширного подмножества их) не решена в рамках ИЛ ни для одного языка. Более того, вроде бы никто решать ее и не собирается, поскольку это просто никому не нужно, по крайней мере, на данном этапе. Это тем более касается русского языка: нам бы дай Бог набрать критическую массу игр, использующих на всю катушку возможности современных парсеров...

Если Вы, уважаемый Eten, запустили эту ветку обсуждения в прикладных целях - понять, что именно нужно реализовать в STK - то вот Вам мой совет: начните хотя бы с базовой функциональности, описанной выше. А потом уже задумывайтесь о "кренделях небесных".

Неактивен

0    0    #15
02.07.2007 03:15

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

Sus_scrofa написал:

Насчет красочности - тут действительно все субъективно. В русском языке богато словообразование, зато в английском самих слов в несколько раз больше...

На самом деле, язык сильнее всего развивается в тех областях, в которых наиболее преуспел народ-носитель.

В частности, русский действительно непревзойден по количеству необычайно ярких и образных синонимов, описывающих процесс принятия внутрь крепких алкогольных напитков, а также драку;).

Неактивен

0    0    #16
02.07.2007 14:30

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Поднимем тему "О Русском парсере", но в другую сторону и конкретно.

uux, я учту твои замечания в поседних двух сообщениях, возможно ты и прав, что нужно не только выворачивать язык как моно тоньше, но и давать автору право выбора, натянуть сильнее или отпустить в словах (имеется удар на классическую грамматику). Думаю, я тебя правильно, понял, хотя бы частично. А щас пока буду разберать материал Олегуса и дальше писать СТК, который будет в последующих модификациях готов к парсеру.
З.Ы.
Блин, во чего точно не хватает так это определнно документов XML с данными о словах русского языка (классическая грамматика, синонимы и т.д.), уже было из чего автору выбирать. hmm

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru