21 апр. 2009 г.

Joystick 0.5

"Видение победителя выплыло из последних минут предрассветного хаоса..." - на часах 5:18,, а я бьюсь со своим кремниевым зверем...

машина повержена - я обернулсе победителем!
итак,, Joystick стал теперь полноценным Монадическим Трансформером. а это ещё один шаг на пути к успеху абстракции.

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

начинка пока остаётся той же. но теперь она лучше отделена от оболочки,, а это значит что менять/совершенствовать её будет удобнее.

13 апр. 2009 г.

Joystick is online

Не могу не написать о том, что ко мне вернулось вдохновение и я вновь воскресил Джойстика, как это уже происходило несколько раз.

Joystick - это чат-бот, которого я пишу на хаскелле. изначально он был просто ботом, с которым можно было пообщаться на своём компе. он учится говорить у своих собеседников, запоминая как они строят предложения. система более чем примитивная,, но иногда она выдавала такие перлы,, что не восхищаться им было сложно.
потом darling-kicks написал для него интерфейс для работы через вконтакт (на перле). и Джой там какое-то время жил и был всем доволен, общался со всеми желающими через сообщения или надписи на стене. у него там появились друзья и почитатели,, те кто с ним регулярно общался. мы понемногу устраняли всякие неисправности и улучшали его,, и интересно, что администрация не засекла что его (потому что он достаточно естественно себя вёл),, хотя в то же самое время у моего знакомого забанили вконтакте двух самописных ботов и стали строже следить за тем, что многие пишут "недостоверную информацию" (: Джой как и в фильме "испоганил все их планы".
потом всё постепенно как-то заглохло.. во-первых потому что с ростом лексикона бредовость его мыслей возрастала экспоненциально,, а все хотели с ним болтать как с человеком - никто не хотел его учить, как надо говорить,, во-вторых изменился api контакта и перл-интерфейс перестал работать. и переделывать его не было большого смысла - нужны были качественные изменения.
новая реинкарнация Джойстика из Марракеша была реализована мной уже под irc полностью на хаскелле. было это в августе прошлого года на chaos constructions - атмосфера располагала к тому, чтобы что-нибудь эдакое сделать - впрочем и предыдущая версия была в значительной степени сделана на этом мероприятии годом раньше.
новая irc-версия была полностью переделана и более или менее нормально работала,, но особой популярностью не пользовалась. видимо потому что наиболее активные собеседники - люди далёкие от "хакирования",, а в irc собственно в основном либо те, кто там уже очень давно,, либо те, кто просто по жизни увлекается такими штуками.
а вот на прошлой неделе было такое мероприятие под названием sun teсh days - тоже посиделки для программистов организованные Sun. и снова это вдохновило нас с darling-kicks на новые свершения в старых начинаниях.
итак новая, последняя на данный момент версия Джоя - это старая начинка из irc-версии в новой обертке jabber-интерфейса. нашлась библиотечка для хаскелла про джаббер и оказалось очень просто перенести то, что было готово.
теперь Джой может работать как нормальный jabber-bot и всё в общем-то в этом смысле хорошо. к тому же джаббер в последнее время стал довольно популярен и весьма доступен. так что можно расчитывать на нормальную аудиторию собеседников.

но интерфейс, такой или эдакий, это ещё четверть дела. а самое интересное в том, как он устроен изнутри: как он учится, как "думает" и как формулирует свои мысли.
и так как с jabber частью делать особенно нечего, я хочу заняться вплотную перерождением мозга Джойстика и сделать какую-то более интересную и теоретически продвинутую модель. так что в ближайшее время буду разбираться со всякими хитрыми хаскеллевскими библиотеками про анализ естественных языков, искуственный интеллект, марковские цепи и т.д. и т.п.
а про то, что я решу использовать и как я буду это делать, я думаю я тут ещё более или менее подробно напишу.

в то же самое время darling-kicks параллельно со мной занимается разработкой Джоя на перле. и надо заметить со своими оригинальными идеями. браво, дружище!
посмотрим что у нас выйдет...

да и самое главное! как его теперь можно найти:
нужно в своём джаббер-клиенте, добавить пользователя 0xjoystick@jabber.org - и когда он будент онлайн, с ним можно поболтать (;

p.s. не надо думать, будто id3project умер. он вошёл в рутинную стадию документации и тестирования, а всякая рутина как известно убивает творческие порывы. поэтому через некоторое время, поиграв с Джойстиком, я вернусь и с новыми силами доделаю то что задумал. обязательно доделаю. если брошу на пол-пути - будет не просто обидно, это будет стыд и срам. я себе этого не прощу. (;