Есть две мысли, одна близкая, другая отдаленная.
Во-первых отказался работать скрипт на Перле, а поскольку я Перл не понимаю, да и глядя на него не очень и хочется...
Во-вторых хочется привязаться к словарям по dict-протоколу, но это потом когда-нибудь.
В рассылку мне пока еще рано, я совсем чайник.
В доку пока не залез, и вообще ноут выключен. Так что на совсем тупые вопросы ответ не обязателен

Но все же хорошо бы услышать отсылку к конкретному разделу, где RTFMить
Нужно получить список файлов в директории (как?) и найти все пары *.index *.dict.dz
Насколько понимаю нужно, получив список файлов, match'ить его примерно так ?
{FileName | '.index'} = элемент списка файлов ?
А потом вероятно проверять существование файла { FileName | '.dict.dz'} как ? бегать по списку второй раз не хочется. Упорядоченность списка файлов никто не гарантирует.
Далее, в принципе возможно наличие файлов *.Index например, т.е. с именами/расширениями отличающимися размером. Такие хотелось, бы не учитывать, но предупреждать. Как это лучше сделать ? Добавить в список файлов для каждого имени еще его uppercase производную и матчить их ? Или есть какой-то вариант match'ить с игнорированием размера букв ?
Кстати, отлаживать наверное удобнее всего пока в erlang shell — отработать функцию из простейших кирпичиков и убедиться, что работает. Тогда есть ли воможность потом несколько фушкций/переменных-констант записать в текстовый файл, чтобы не набивaть снова ?
Теперь отдалённые вопросы

По поводу dict-серверов. видится промежуточный слой, который будет транслировать запросы клиентов из внутреннего потокола в DICT. Т.е. вероятно будет множество клиентских процессов. В то же время, например конфигурацию сервера (как минимум список установленных словарей) лишний раз читать не нужно — и чтобы меньше сервер грузить видится отдельный процесс, который при подключении считывает список словарей и хранит его в себе. И отдает клиентским процессам по запросу либо хранит где-то как глобальную переменную (давно доки читал, но кажется есть что-то типа поименнованных переменных в окружении программы) Как сделать, чтобы клиентские процессы могли получать этот список но не могли его изменить ? Проще всего наверное делать копию переменной и отдавать — но не хочется лишний раз копировать, нафиг надо ?
В том же паскале или C можно передавать const-параметры, а в Erlang ?
Вопросы наверное идиотские, но я не знаю, как это принято в Erlang'e