Ответ: Переносы по алгоритму TeX
Антон, добрый день!
SAnton сказал(а):
...алгоритмы разные и к расстановке слов подходят «с разных сторон».
Посмотрел я диссертацию Ф. Лянга. На мой взгляд, философия batov's hyphenator и философия подхода Ф. Лянга совпадают абсолютно. Различие возникает лишь на этапе реализации. Не знаю, насколько это правомерно, но я бы провел аналогию с философией, реализованной в PS и PCL принтерах. Все определяется соотношением код/данные.
У Лянга, поправьте меня, если я ошибаюсь, реализована "PCL-модель": информативная часть содержится в данных (паттернах).
Batov's Hyphenator реализует "PS-модель": содержательная часть помещена в код... Например, то, что Вы называете классами, реализовано в batov's hyphenator под названием "шаблон". Получается что-то вроде такого: "если за любым символом следуе две гласных, делать то-то..." (Если, конечно, я правильно интерпретирую Вашу терминологию.)
В пределе, если исключить ошибки реализации, результаты обоих подходов должны совпасть абсолютно. (Здесь я не касаюсь лингвистических предпочтений: кто-то полагает, что, например, правилен перенос "из-учить", кто-то -- "изу-чить"...)
Но, почему-то меня не покидает ощущение, что "PS-модель", теряя в универсальности, для каждого отдельного языка дает лучший результат... Этот подход более гибкий... И в первую очередь именно за счет применения шаблонов...