?

Log in

No account? Create an account
dump -0f - /dev/mind
Я знаю Haskell, OCaml, GSM, эндофункторы и много других страшных слов
Сказ про то, как девушка Катя робота покупала 
8th-Jan-2008 08:59 pm
Вы думаете, лучшие друзья девушек - это бриллианты? Нееет, лучшие друзья девушек - это роботы!

Сначала предыстория. В моем jabber-клиенте настроен auto join в несколько конференций. Сами конференции я в последнее время практически не просматриваю, но и auto join не отключаю. В двух конференциях я даже модератор :), и ко мне периодически обращаются "в приват" с самыми странными просьбами.

Например, сегодня меня контачит "в привате" пользователь Катя из конференции ... впрочем, неважно, из какой именно. Дальше следует такой диалог (стилистика, орфография и т.п. сохранены, особо злачные фразы выделены):

<Катя> Только тут стоит бот ?
<ADEpt> нет
<Катя> Че нет ?
<ADEpt> не только тут
<Катя> Не поняла
<ADEpt> не только тут стоит бот
<Катя> Можеш написать комнаты где можно бота дешево купить ?
<ADEpt> а зачем его покупать?
<Катя> А че есть бесплатные ?
<Катя> Кокупать чтоб был
<Катя> А че есть бесплатные ?
<ADEpt> есть
<Катя> В этой комнате есть ?
<ADEpt> есть
<Катя> Какой ник ?
<ADEpt> вон, зайди в haskell@conference.jabber.ru, пообщайся с ботом :)
<ADEpt> а тут - спроси "кто тут, бля, бот?". Тебе сразу и расскажут :) (лирическое отступление номер 1: в этой конференции "сидит" бот, который выкидывает за употребление мата)
<Катя> А там есть бот ? бесплатный


Тут Катя подключается к haskell@c.j.r. Там ее встречает бот с вопросом "напиши код на Haskell, находящий минимальный нечетный элемент списка, и получи member-а". Катя, похоже, офигевает и даже не пытается с ним общаться. Проходит пару минут.


Слава роботам!<Катя> Мне нужен бот
<ADEpt> Да, бот - это хорошо
<Катя> Мне нужен бот
<ADEpt> Чтобы поговорить?
<Катя> Можно принесли мне в комнату ? Только бесплатных ?
<ADEpt> да легко.
<Катя> А это платон будет ?
<ADEpt> Платон давно умер
<ADEpt> См. http://ru.wikipedia.org/wiki/%D0%9F%D0%BB%D0%B0%D1%82%D0%BE%D0%BD
<Катя> А это за деньги будет ?
<ADEpt> За деньги можно практически всё
<Катя> Короче ты можеш привести бота aleksey чтоб не за деньги ?(лирическое отсутпление номер 2: известного в около-jabber-ных кругах aleksey, человека многих талантов,почему-то периодически принимают за бота :)
<Катя> Короче ты можеш привести бота aleksey чтоб не за деньги ?
<ADEpt> а чего ты фразы повторяешь? Ты, часом, не бот?
<Катя> Нет я не бот я катя

<Катя> Приведи мне пожалуйста не за деньги этого бота lambdabot на дня 4 ладно ?
<ADEpt> легко
<ADEpt> куда?
<Катя> В комнату Frends
<ADEpt> получай


Тут надо сделать лирическое отступление номер 3. Lambdabot - это такой jabber bot, написанный на Haskell, который может делать много интересных вещей, связанных с Haskell, но который совершенно бесполезен в контексте обычной "трепологической" комнаты. Зачем он девочке Кате - малопонятно.

Я кидаю всю переписку dottedmag-у (на VPS которого крутится lambdabot). Мы заходим во Frends посмотреть, что будет. Там - человек 5 народу, и уже сидят два бота(!), в том числе и тот, который выкидывает за мат.

Я join-ю lambdabot-а в Frends@c.j.r. Катя пытается с ним общатся (посылая сообщения "Привет!", "Ты бот?"). Lambdabot молчит. Диалог в привате продолжается:


<Катя> Ты тут ?
<ADEpt> тут
<Катя> Спосибо а кто это Mikhail Gusarov ?
<ADEpt> не знаю. Может быть, еще один бот?
<Катя> А можеш мне бота милан привести не за деньги ?
<ADEpt> Милан - это в Италии, это далеко. Не могу
<Катя> А можеш бота выбухоль не за деньги ?
<ADEpt> Я думаю, бота с таким именем сразу забанят
<Катя> По чему ?
<Катя> В этой комнате за бан ?
<Катя> Ну приведешь ?
<ADEpt> Нет, я не пью
<ADEpt> Вон, у тебя уже есть lambdabot. Мало?
<Катя> Ага :-* мне бы еще одного выбухоль ладно пожалуйстн котик ?
<Катя> Привиди ладно ?



В это время во Frends@c.j.r происходит следующее


<Катя> SulciBot: бот?
<SulciBot> Катя: Да
<Катя> ПыХтачоГ: бот ?
<ПыХтачоГ> [Катя]: матом что
<Катя> Иди на хуй
--- Катя has been kicked: фильтруем базар

GAME OVER

PS
Знающие люди подсказали мне, что в наше время развелась мода на создание jabber-конференций и их "обустройство" по последнему писку моды. Последний писк моды подразумевает, что в конференции есть разные полезные боты - следящие за порядком, организующие викторины и т.п. Однак вот беда - создать конференцию можно двумя кликами даже в том случае, если у тебя в голове одна извилина, и та - прямая, а чтобы "завести бота", надо потрудиться - найти хостинг, скачать (о ужас!) исходники, что-то там куда установить или даже скомпилировать ... Таки сложные действия создавателям конференции не под силу. А бота - хочеццо(tm). Вот они и ходят по другим конференциям и клянчат помощь таким вот образом.

Соответственно, сейчас модно продавать ботов по цене от 50$/час эксплуатации + 100$ за настройку :)
Получается, проворонил я свое счастье.

PPS
Платят или нет - не знаю, но не говорите, что я вас не предупреждал про business opportunity

PPPS
get-a-bot.com еще свободен ;)
Comments 
8th-Jan-2008 09:27 pm (UTC)
Интерпретирует и кормит тестовыми списками? А как реализована защита от непредусмотренного задачей кода?
8th-Jan-2008 09:53 pm (UTC)
Наверное тем, что это хаскел и код чистый? :) А unsafePerformIO спрятан. Ограничение по времени и памяти уж точно не составит труда поставить.
8th-Jan-2008 11:29 pm (UTC)
Использует runplugs из LambdaBot. Который, в свою очередь, использует hs-plugins.

Если коротко - недоступно IO, некоторые модули (типа System.*) и ограничение по времени в три секунды. В рамках этого - все, что угодно.

Компилируется на ходу и проверяется на тестах (одинаковость результата на случайнов входе с эталонным кодом)
9th-Jan-2008 09:57 am (UTC)
Фига себе, вот это подход!
9th-Jan-2008 01:06 pm (UTC)
Звучит страшно, но за пределами библиотеки (runplugs + hs-plugins) там от силы 40 строчек на все про всё ...
15th-Oct-2009 06:15 pm (UTC)
гы :)

лентяев и не владеющих хаскелем отсеивает начисто :))))
This page was loaded Jul 18th 2019, 11:35 am GMT.