пятница, 10 октября 2008 г.

Configuration Section Designer - дизайнер настроек

А вот эта штука многим может быть интересна - это плагин к Visual Studio позволяющий создавать конфигурационный файл (файл с настройками приложения) используя интерфейс a la Class Diagram:

Свершилось!

Мой переводчик опубликован на Codeplex'e. И даже с исходными кодами :) Правда не всё - отдельные части прогрыммы я пока что попридержу... Вообщем, кому интересно - качайте и мучайте :) В исходниках много-много комментариев, думаю часть вопросов снимет... Ну и конечно - пишите, помогу чем получится...

четверг, 2 октября 2008 г.

Интересная статья

Наткнулся на интересную статью "Is Google Making Us Stupid? ". Очень рекомендую (внимание - на английском). Собственно, гугл там ни при чем :) Речь идет о том, что чем больше мы пользуемся интернетом, тем сильнее меняется наше восприятие информации. И высказанные в статье мысли во многом пересекаются с тем, что я и сам стал замечать...

среда, 1 октября 2008 г.

Мой переводчик. Обновление

Выложил текущую версию переводчика (от 01.10.2008). Куча мелких изменений :)

Все ближе к релизу...

воскресенье, 28 сентября 2008 г.

Про мой переводчик. Структура.

Продолжение. Начало смотрим тут. 

Итак, как я уже писал ранее - переводчик является модульным, причем модули должны быть независимы друг от друга. Не то чтобы это было обязательным требованием, однако, чем более связаны между собой модули - тем сложнее их менять. Соответственно, данное требование накладывает определенные ограничения на сам процесс перевода. На данный момент он является линейным. Примерная блок-схема такова:

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

Такой подход не является обязательным - никто не мешает переделать сам алгоритм перевода. Однако, на данный момент необходимости в этом я не вижу.

В процессе разработки был придуман следующий подход к процессу перевода предложений:

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

Как видно - получившийся алгоритм оказался жизнеспособным.

Вот так вот мутировал изначальный линейный алгоритм в процессе развития:

... синие блоки примерно соответствуют блокам на первом рисунке.

Ну и напоследок - степень завершенности ключевых модулей анализа:

Продолжение следует...