LINUX.ORG.RU

Разыскивается сишка, но с юникодом из коробки

 ,


2

5

САБЖ. Ищется относительно простой (не C++), но быстрый язык с полноценным юникодом из коробки, хочу в питон батарейку клепать, так как готовая библиотека на ванильном питоне (не моего производства) на пару порядков по скорости проседает от того, что я бы хотел видеть и да, я точно знаю что это возможно, так как есть проприетарщина на крестах, которая могёт (но авторы бабосика уж очень много хотят). При этом не очень хочется заниматься любовью и лишней магией на указателях с utf-8, utf-16 и utf-32 посредством всяких костылей.

Интересно, как там у ржавого и го с юникодом и производительностью.

★★★★★
Ответ на: комментарий от lovesan

Очевидно, что для NLP надо выкинуть к херам питон

Это потому что на нём самая развитая инфраструктура NLP и ML? Не смеши плиз.

и тем более не лезть во что-то низкоуровневое

Отчасти согласен, но тут прикол в скорости питона (а точнее её отсутствия), всякие числодробилки, вроде numpy на батарейках жестко, а тут не везде батарейки, где по-хорошему их надо вносить.

А надо взять Common Lisp

И закопать. Не, как язык он неплох был, лет эдак 20 назад.

peregrine ★★★★★
() автор топика
Ответ на: комментарий от peregrine

И закопать. Не, как язык он неплох был, лет эдак 20 назад.

Python устарел уже при появлении, по сравению с CL. И до сих пор нагнать не может, сидит себе в 70х.

lovesan ★★★
()
Ответ на: комментарий от peregrine

привести все слова к начальной форме

как раз stemming аlgorithm, которые разбивают на stems = как корни, только + суффиксы. см. подробнее на примерах.

для задания stemming algorithm хорошо подходит как раз Snowball.

ещё про русский язык почитай – от нормальных филологов, например книги С. Л. Рябцевой. есть статьи на крамоле:

почему в школе не любят русский язык и про «ОПГ в филологии» 1 2 3; про то, как калечили русский язык в XX веке.

хотя полезнее конечно, сразу книги.

если коротко. в XX веке было много дурацких реформ русского языка. в итоге ОПГ в филологии канонiчной стало считать фонематическую теорию морфологии, что первичны фонемы, как слышится (а не морфемы «как пишется» или семемы «как думается», или «как понимается по смыслу»).

очевидно же, что это ересь полная. особенно для русского языка, где есть чередование согласных, склонения, спряжения. падение редуцированных гласных исконное и посконное, вот это всё.

эта разница до сих пор видна, если сравнивать например русский, украинский и белорусский. где буква «ять» чередуется в другие буквы.

если понимать например, почему так происходит. то есть, понимать «корнесловие», «смыслословие». то никакой загадки тут нет. одна сплошная разгадка. для сего действа потребно ведать истинные корни слов, их происхождение. онтомастику. этимологию, то есть, происхождение слов. истинное происхождение слов с русскими корнями, по правилам русского языка. с русскими буквами. здесь например помогает понимание что буква «ять» – исконно русская, и все слова с ней – имеют русские корни.

далее нужно понимать, как словоформы изменяются, по каким законам. для чего С. Л. Рябцева вводит ряд правил.

«В русском языке, таком простом и красивом – когда ПРАВИЛЬНО ПОНЯТ ЗАКОН, – не надо ЗАПОМИНАТЬ, надо ПОНИМАТЬ, потому что почти всё ВЫВОДИТСЯ.»

и способов проверки проверочными словами, склонениями и спряжениями.

проверять надо корни и суффиксы, и то как они изменяются. про скрытые корни.

anonymous
()
Ответ на: комментарий от anonymous

"С.Р. – Русский язык преподают в школе и вузе не просто плохо, а преступно плохо, потому что всё преподавание во всей стране основано на ложной западной теории русского языка. Какова же философская основа всех нынешних филологических теорий?.. Подчёркиваю, что именно там – причины их полного провала. "

то есть, фонематическая «от звука» – теория не правильная. при таком «преподавании» естественно получается много исключений. и непонятная в целом система правил.

Ещё до 1917 года под видом улучшающей реформы русского языка была заложена мина замедленного действия, которая должна была привести к разрушению языка (а значит и сознания), о чём знали «реформаторы» – и они почти добились своей цели. Убрали буквы – разрушены морфемы – разрушен смысл, люди перестали понимать даже то, что они сами говорят. Например: изменили статус полугласных букв ЕР и ЕРЬ, назвали их твёрдым и мягким знаком, которые якобы никакого звука не обозначают. Полугласные-то в словах остались, но детей приучают их не замечать, игнорировать факты языка. Не замечать существующего – а это (навык!) имеет огромные последствия. Учебники – вот они, у меня под рукой – содержат массу теоретических ошибок. Авторы разные, издательства разные, рецензенты разные, а ТЕОРИЯ-то в основе одна и та же – фонематическая. А она – ложная! И потому в учебниках полностью проигнорирован МОРФОЛОГИЧЕСКИЙ ЗАКОН РУССКОГО ЯЗЫКА, по которому строится и живёт сам язык.

В учебниках никаких ссылок на этот закон, никаких даже упоминаний о нём, словно бы его не существует… А этот закон, как я уже говорила, позволяет и писать закономерно ВСЕ МОРФЕМЫ (а не только корни) и проверять написанное. Но в учебниках все мудрствования оканчиваются безсильным призывом: «Запомни!» Запомни окончания (а их можно и нужно проверить), запомни 11 глаголов-исключений (а их нет в природе, так как ЕСЛИ ЗАКОН ПОНЯТЬ ПРАВИЛЬНО, ТО ИСКЛЮЧЕНИЙ НЕ БУДЕТ), запомни 9 разрядов местоимений (а их всего 3, как и имён) и т.д.

что предлагает С. Л. Рябцева? понимать происхождение слов, и то, как они изменяются. собственно, теория не новая. «почвенники», тот же Шишков А. С. например, предлагали эту теорию, заложили её основы. тот самый Шишков который

но панталоны, фрак,жилет – всех этих слов на русском нет
Шишков прости, не знаю как произнести // Пушкин.

а почему он не знает и безсильно призывает запоминать исключения? потому что «полностью проигнорирован МОРФОЛОГИЧЕСКИЙ ЗАКОН РУССКОГО ЯЗЫКА». знал бы его – знал бы и как произнести. и как написать грамотно, во всех словоформах.

между тем, такой закон существует. и общеизвестен с 19 века. но патентованым филологам (почти что копирастам от филологии, лолъ) – он не нравиццо. потому что очень простой и понятный. наоборот, им чем мутнее и не понятнее, тем им интереснее. рыбку в мутной воде ловить-то.

отседова и зело есть проистекает энто самое ОПГ в филологии. патентованные филологи не одобряют МОРФОЛОГИЧЕСКИЙ ЗАКОН РУССКОГО ЯЗЫКА, ибо дюже понятный.

они проповедуют сектантскую ересь ФОНЕМАТИЧЕСКОЙ ТЕОРИИ. которая неизбывно воспоследует к зело несметному числу сумбурных исключений, безо всякой системы (когда в системе знаний, теории, исключений больше чем правил – что-то глубинное не в порядке с самой системой). которое оные филологи несясь как куры во весь опор стремятся классифицировать. невнятным образом.

о же чём и весь этот спор.

anonymous
()
Ответ на: комментарий от anonymous

это конечно же – дичь полная. но так обстоят дела в филологии. из-за ОПГ в филологии и главенствующей бестолковой ФОНЕМАТИЧЕСКОЙ ТЕОРИИ – преподавание языка искусствено запутано, усложнено, избыточно словно заговнокожено уже на уровне теории.

глупые теории приводят к глупому коду, быдлокоду и говнокоду.

это достаточно очевидно в программировании. с машинным и не очень обучением.

но в хвилологии отчего-то секте ОПГ в филологии – не очевидно.

очевидно же, что нужна более другая, красивая, понятная, разумно структурированая теория.

МОРФОЛОГИЧЕСКИЙ ЗАКОН РУССКОГО ЯЗЫКА, например.

этот быдлокод в понимании легко измерить линейкой и килобайтами.

возьми в руки линейку и измерь ею типичный томик лингвистов «фонематической теории», на предмет соотношения количества исключений и правил. и ясности этих правил.

ты увидишь, что эта теория – говнокод. и не позволяет достигнуть желаемого.

чего ж удивительного, что при попытке не то что закодить оную на компьютере, а даже и хотя бы осознать её как следует – мы неизбывно получаем говнокодъ?

в тоже время. МОРФОЛОГИЧЕСКИЙ ЗАКОН РУССКОГО ЯЗЫКА, ежели его как следует осознать, формализовать и закодить – может привести (да и скорее всего приведёт: *невозбранно достигнув желаемого) к считанным килобайтам смыла vs. сектантских многобайтов говнокода (состоящихъ, главнымъ образомъ – изъ исключений).

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

вполне конкретно так измерить – какая теория приводит к ясному и понятному освоению, и ясному и прозрачному коду. а которая – к говнокоду из-за недопонимания из-за непотребной теории (состоящей в основном из исключений безо всякой системы, чем из правил красивой системы)

причомъ же здесь Snowball. да всё при том же. stemming algorithm на snowball русского языка, имеющийся – там зело компактен вельми.

и это мы ещё не употребили как следует для его осознания МОРФОЛОГИЧЕСКИЙ ЗАКОН РУССКОГО ЯЗЫКА !!!

какие же высоты научной мысли (предсказанные Шишковым, Ломоносовым, Гвоздёвым, Буслаевым, Аксаковым, … , Рябцевой С. Л.) и прочими настоящими филологами (а не сектантам из главенствующей быдлокод-быдлотеории с некачественным осознанием)

– ещё предстоит открыть !!!

например, объединив как следует – как тому и быть должно все правила русского языка, корнесловие и смыслословие – отринув ну или разумно осознав причины, и выбрав верные изменения изо всех изменений говнореформ XX века, уничтоживших это верное понимание. которые были достаточно очевидны в XIX веке. были очевидны и ранее. но в XX веке из-за говнореформ безо всякого осмысления, коверкающих и уродующих сам язык (и мутящих говнокод-генерящую теорию звукосмыслов и слухобуков, а не письмосмыслов и образ-буков – в нужном осмыслении и понимании, сохраняющем целостность образа)

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

в стройную и верную – смыслосодержащую и не говнокод-генерящую, фонеметическую говнотеорию – а в образный смысло генерящий МОРФОЛОГИЧЕСКИЙ ЗАКОН РУССКОГО ЯЗЫКА !!!

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

стем (=корень+суффикс) и алгоритмов стеммирования. и законов морфологии – истинных, неизбывно воспоследующих корнесловием и смыслословием своим к древу верной теории, смыслогенерящей и говнокод нетерпимой –

невозбранно достигнув желаемого.

anonymous
()
Ответ на: комментарий от peregrine

Сейчас через кучу медленного говна, вроде pymorphy2, NLTK в основном это делаю. Особые нарекания по производительности к pymorphy2. Захлёбывается даже оптимизированная версия

отчего же ему не тормозить как следует, при такомъ-то подходе:

Работает со словарём OpenCorpora, а для незнакомых слов строит гипотезы.

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

Однако оценки P(tag|word) не всегда помогают выбрать правильный разбор слова. Так как pymorphy2 работает со словом не в контексте, а как с отдельной единицей. Условная вероятность оценена на сбалансированных текстах, в то время как в специализированных текстах оценки тегов могут быть другими (например, в металлургических текстах P(NOUN|стали) > P(VERB|стали)). Для улучшения оценки условной вероятности необходимо размечать задания OpenCorpora, таким образом снимается неоднозначность с большинства слов.

ежели этому не тормозить, идеологически и концептуально – то чему же тогда тормозить вообще?

оно просто обязано же тормозить вот там, при такомъ-то подходе.

anonymous
()
Ответ на: комментарий от anonymous

падение редуцированных гласных исконное и посконное, вот это всё.

вдругорядъ объ ономъ паденiи:

Но если мы обращаемся к позднему ПС периоду, к ДРЯ и его исходной фонетической системе, термин «редуцированные гласные» принимает совсем другое значение. Редуцированными гласными в древних славянских языках называют не аллофоны какихлибо гласных, а самостоятельные фонемы [ь] (ерь) и [ъ] (ер), унаследованные из праславянского языка и впоследствии утраченные в процессе так называемого падения редуцированных. В ПС2 редуцированные гласные возникли из кратких гласных верхнего подъема ([ь] < *ĭ и [ъ] < *ŭ) в результате их централизации (понижения подъема). Таким образом, это были фонемы средневерхнего подъема: [ь] — переднего, а [ъ] — непереднего (заднего) ряда. В отличие от редуцированных гласных СРЯ, праславянские и древнерусские редуцированные могли находиться как под ударением, так и в безударном положении

да потому что никакого падения и не происходило по сути. это и есть полугласные – как об этом и говорит, и пишет С. Л. Рябцева.

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

anonymous
()
Ответ на: комментарий от peregrine

наш выбор :

Так что наш выбор - древнерусский язык. Тот самый, живой, который следует выучить любому уважающему себя попаданцу.

anonymous
()

@RazrFalcon, ну спасибо, остановился на ржавом, можешь себя поздравить, в рядах Rust-оманов пополнение. Кстати, Rust в связке с питоном в тестовом хелловорлде-обвязке над unicode_normalization::UnicodeNormalization моего исполнения на 17% обогнал по скорости сишку в связке с питоном (из батарейки unicodedata) на задаче нормализации юникода. Теперь не пойму как это вышло.

peregrine ★★★★★
() автор топика

Если именно относительно простой, то смотри на Go — https://hackernoon.com/extending-python-3-in-go-78f3a69552ac

Интересно, как там у ржавого и го с юникодом и производительностью.

Ржавый еще более вырвиглазный, чем С++. Не думаю, что он тебе подойдет под «относительно простой (не C++)».

anonymous
()
Ответ на: комментарий от peregrine

в рядах Rust-оманов пополнение

милости прошу к нашему шалашу!

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.