Home
Objective Caml
ocaml@conference.jabber.ru
Воскресенье, 29 мая 2011< ^ >
gds установил(а) тему: Камль -- http://caml.inria.fr | Логи -- http://chatlogs.jabber.ru/ocaml@conference.jabber.ru/ | Светлое будущее -- http://camlunity.ru/ | Нефильтрованное настоящее -- https://github.com/camlunity/kamlo_wiki | Портер прошлое -- http://gdsfh.dyndns.org/kamlo/ | Верблюды грязи не боятся! | release crap, enjoy NIH | репортьте баги официальным дилерам | ocaml мёртв, move on
Конфигурация комнаты
Участники комнаты

GMT+4
[00:23:41] arhibot вышел(а) из комнаты: Replaced by new connection
[00:23:42] arhibot вошёл(а) в комнату
[00:28:13] Typhon вошёл(а) в комнату
[00:48:59] arhibot вышел(а) из комнаты
[00:49:00] arhibot вошёл(а) в комнату
[01:16:35] <ygrek> к-ц, darcs пуллит 75 патчей уже 5 минут и зажирает весь cpu, интересно, на smp он бы все ядра зажрал?
[01:17:29] <zert> юзай гит
[01:17:40] <ygrek> дык я юзаю
[01:18:17] <ygrek> а oasis в darcs зачем-то, я уже говорил Le Gall'ю что его все за это ненавидят, но он не сдаётся
[01:19:41] <Typhon> хотя акк на гитхабе у него уже есть
[01:19:48] <Typhon> вот автор реакт перешёл на гит
[01:20:17] <ygrek> повбывав бы
[01:20:49] <komar> А даркс в оазисе для каких целей?
[01:21:01] <komar> Он там для людей или для роботов?
[01:21:09] <ygrek> ы?
[01:21:11] <Typhon> код оазиса хранится в дарксе
[01:21:18] <komar> А, это.
[01:21:28] <komar> Я думал, что репа на VCS или еще что.
[01:21:36] <komar> Хай юзает, удобно человеку.
[01:21:41] <komar> Гит тупой дюже.
[01:22:09] <ygrek> удобно, ага, уже 10 минут
[01:22:20] <komar> У него все работает, видать.
[01:22:25] <komar> Фигли, пуллить не надо.
[01:22:47] <Typhon> а как без пулла?
[01:22:47] <ygrek> точняк! тарболлы патчей качать же
[01:22:52] <komar> А вообще оазис не нужен.
[01:23:01] <Typhon> ну да, мейкфайлы с седом -- ня!
[01:23:05] <komar> А то.
[01:23:09] <ygrek> больше скажу, программисты не нужны вообще
[01:23:14] <ygrek> нарушают мировую гармонию
[01:23:16] <komar> Нет, программисты нужны.
[01:23:32] <komar> А вот велосипедные пакетные менеджеры на каждый язык — это что-то непостижимое.
[01:23:38] <komar> Поубивал бы за такое.
[01:23:49] <ygrek> oasis это не пакетный менеджер :)
[01:23:58] <komar> А шо это?
[01:23:58] <ygrek> это билд система
[01:24:17] <komar> Гы, правда? А тогда что пакетный менеджер? GODI?
[01:24:35] <ygrek> учитывая кстати что общего пакетного менеджера для всех языков и ОСей нет, а ОС-специфичные как ни странно ОС-специфичны
[01:24:39] <ygrek> godi да
[01:24:46] <ygrek> oasis-db будет
[01:24:59] <komar> Да фиг с ними с осями.
[01:25:06] <ygrek> ... то ещё один пакетный менеджер картины не портит
[01:25:13] <komar> Вы хотя бы в рамках одной запущенной системы срач не разводите.
[01:25:29] <komar> Ей-Богу, это единственная причина, по которой я не использую х-ль.
[01:26:07] <Typhon> потому что кабал пакеты ставит в ~/.cabal ?
[01:26:09] <komar> Потому что в репозитариях какая-то хрень, самому собирать — убийство, а кабал жостко глючит.
[01:26:17] <ygrek> ну это волнует только системо-фанатов
[01:26:25] <ygrek> а я пишу софт и хочу чтобы он везде собирался
[01:26:27] <ygrek> как мне быть?
[01:26:28] <komar> Да хоть в /, какого кляпа у меня два пакетных менеджера в системе?
[01:26:31] <Typhon> komar, ты попробуй руби с rvm -- это же ужс!
[01:26:42] <komar> Системо-фанатов, ага. Я поэтому не на винде.
[01:26:52] <komar> Typhon: я рубист, да. С gem'ом.
[01:27:06] <komar> По глючности сравнимо с кабалом.
[01:27:11] <ygrek> а мне вот надо на винде собирать. и что. apt туда портировать? ;))
[01:27:38] <komar> Винда == срач, именно по этой причине.
[01:27:58] <komar> Эти ваши кабалы с гемами и прочими годями превращают мне систему в винду.
[01:28:31] <Typhon> макось больший срач, кмк
[01:28:39] <ygrek> ну, снёс корень установки и система обратно превратилась в тру-красноглазый оплот
[01:28:57] <komar> Без х-ля, окамла и руби.
[01:29:14] <ygrek> согласись что собирать свои либы под каждую систему в ОС-специфичные пакеты это перебор
[01:29:16] <komar> И причем тут красноглазость?
[01:29:27] <komar> Мне нужно, чтобы система стояла годами, а не превращалась в помойку.
[01:29:29] <ygrek> так, троллю
[01:29:44] <komar> Чо, простите?
[01:29:46] <Typhon> komar, а как ты на питон наезжаешь, но руби используешь? оно же бОльшее г?
[01:29:46] <ygrek> ну так это тебе нужно
[01:29:47] <komar> Я не распарсил.
[01:29:55] <ygrek> а мне нужно чтобы софт работал
[01:30:20] <ygrek> и пока моих либ не будет в пакетах и ещё и нужных версий - мне нужно распостранять свои либы самому
[01:30:21] <ygrek> как?
[01:30:34] <komar> Typhon: не большее. Сам язык менее говно. А на питон наезжаю потому, что его пихают везде, куда не следует. Если и руби начнут аналогичным способом пихать — буду наезжать на него.
[01:30:37] <ygrek> (про красноглазость троллю)
[01:30:50] <komar> ygrek: static linking?
[01:31:08] <ygrek> я распостраняю исходники
[01:31:23] <komar> Тебе нужно исходники или «чтобы софт работал»?
[01:31:32] <ygrek> чтобы софт собирался
[01:31:40] <komar> Или тебе нужно поставить на мой компьютер мастер установки твоего корявого софта?
[01:31:48] <komar> Я против последнего, только и всего.
[01:31:59] <ygrek> чёт я запутался
[01:32:08] <ygrek> godi это мастер установки или нет?
[01:32:20] <komar> Это я пошутил.
[01:32:21] <ygrek> вообще бандлы конечно для этого
[01:32:31] <ygrek> но вопрос-  как распостранять либы
[01:32:41] <komar> «Матер установки» — это такая штука под виндой, которая засирает полсистемы.
[01:32:57] <komar> ygrek: а зачем их распрастранять?
[01:33:10] <ygrek> ну чтобы люди юзали
[01:33:11] <komar> Я розроботчег, скатал либу да собрал мейком.
[01:33:17] <ygrek> а обновить?
[01:33:20] <komar> А чтобы люди _юзали_, они берут мою программу и юзают.
[01:33:33] <ygrek> чтобы программеры юзали либу?
[01:33:46] <komar> Стянут тарбол/git и заюзают.
[01:34:02] <ygrek> народ нынче ленивый пошёл, урлы репы у всех разные, собираются все по-разному
[01:34:06] <komar> Если либой пользуются 9000 человек, то кто-нибудь да засунет в репу дистра.
[01:34:16] <ygrek> плюс ещё надо ж мануалы ocamlfind'а читать чтобы правильно настроить
[01:34:28] <komar> ygrek: wget-tar-xf/git, make — какое разнообразие, ага.
[01:34:30] <ygrek> все хотят cool-soft-manager install cool-liba
[01:34:38] <komar> Бедный погромист не осилит же.
[01:34:48] <komar> Ч-че?
[01:34:54] <komar> Какие мануалы?
[01:35:18] <ygrek> настрой камлофинд на пару паралельных установок камля
[01:35:31] <ygrek> я вот вчера плодотворно общался с автором odb на эту тему
[01:35:45] <komar> Чтобы вы знали — я не собираюсь опускать разработчика до уровня блондинки. Против блондинок ничего не имею — да, они должны иметь возможность нажать кнопочку и установить вот эту программку, а разработчикам нафига такое счастье ценой срача в системе?
[01:35:54] <ygrek> посыл был такой что ocamlfind никто сетапать не умеет поэтому будем всё делать за него
[01:36:13] <komar> ygrek: э-э, а что за проблема?
[01:36:41] <ygrek> ну надо понимать как оно работает :)
[01:36:56] <ygrek> и знать про нужные переменные окружения (из мануала)
[01:37:03] <ygrek> OCAMLFIND_CONF например
[01:37:07] Kakadu вышел(а) из комнаты
[01:37:10] <komar> У меня как бы path="/home/komar/devel/libocaml/:..." в  /etc/ocamlfind.conf для пушего удобства, но только потому, что я пишу свои либы.
[01:37:37] <ygrek> ключевая фраза - на пару паралельных установок камля
[01:37:50] <ygrek> чтобы в системе стояли одновременно 3.11 и 3.12
[01:38:13] <komar> О, этим я не занимался, каюсь.
[01:38:24] <komar> И не представляю, насколько сложно сделать и в чем там проблемы.
[01:38:39] <ygrek> ну не столько сложно, сколько много повторяющейся рутины
[01:38:54] <ygrek> wget/tar/configure/make
[01:38:57] <ygrek> и так 100 раз
[01:39:06] <komar> Хотя, я для комфортной работы с камлом в свое время запилил chroot в убунте с дебианом. :-*
[01:39:28] <ygrek> chroot да, хорошее решение, но не для блондинок :)
[01:39:36] <komar> Блондинки не программируют.
[01:39:41] <ygrek> га га
[01:39:43] <ygrek> если бы
[01:39:44] <komar> Программисты не идиоты.
[01:39:53] <ygrek> сегодня вечер лулзов?
[01:39:55] <komar> Если программисты идиоты, то лучше им вообще не программировать.
[01:40:10] <ygrek> over 90%
[01:40:14] <komar> И вообще, пусть тогда уходят из моего камля в свой х-ль, питон или еще куда.
[01:40:21] <ygrek> ня
[01:40:30] <Typhon> не идиот != "хочу делать тупую работу сто тыщ раз"
[01:40:50] <ygrek> darcs уже 20 минут насилует мой проц
[01:41:07] <komar> Typhon: что именно? По поводу разных версий окамла сказал уже — не пробовал, нынаю, вы правы.
[01:42:29] <Typhon> komar, ну ты предлагаешь разработчику, как я понял, качать каждую либу к каждой своей либе/программе, всё это распаовывать, конфигурять, строить %)
[01:42:41] <komar> ygrek: а вообще, несколько версий одной и той же софтины — это глобальная проблема линупса. И решается она не кабалами, а nixos'ами.
[01:43:03] <komar> Typhon: да.
[01:43:10] <komar> Если ее нет в дистрибутиве.
[01:43:12] <Typhon> никсок пока утопия же какая-то %)
[01:43:18] <komar> Он _работает_.
[01:43:22] <komar> Но он сделан через жопу.
[01:43:37] <komar> Я уже сколько мечтаю его переделать, но это ж столько работы, что руки опускаются.
[01:44:18] <komar> Пока я не вижу в нем концептуальных изьянов — только в реализации, тысячи их.
[01:45:00] <komar> Нет, ребят, вот серьезно. Я блондинка. Вот хочу я две версии кедов. А еще лучше — использовать их вместе. Одни приложения из третих, другие из четвертых. Чо мне делать?
[01:45:29] <komar> Надежда только на то, что в дистрибутиве третьи кеды стоят в /opt/kde3, а четвертые — в /opt/kde4. Но это сраная винда и linux xp.
[01:45:54] <komar> И потом, если различия в версиях не столько глобальные — допустим, нужны мне две минорные версии фаерфокса — то такое уже не проканает.
[01:46:13] <komar> А вот в никсосе все работает. Но через жопу.
[01:47:24] ygrek не выдержал и рестартнул darcs, и шо ви думаете? он начал всё сначала!
[01:47:29] <komar> Вообще, коротко о том, что я хочу сказать: да, проблемы есть, но решать их надо глобальнее.
[01:48:05] <komar> ygrek: сделай darcs get уже, а то я так пойду на git переводиться.
[01:49:48] <ygrek> проблемы есть и надо идти спать!
[01:51:18] <ygrek> get'ится пока норм, но медлееееенно
[01:51:20] <zert> ггг
[01:52:33] <zert> дык на хаскеле же
[01:52:35] <zert> лениво
[01:52:48] <zert> ты начни код редактировать, он сразу и подтянется
[01:53:46] <ygrek> больно смотреть
[01:54:07] <zert> зачем вообще в камловском проекта использовать даркс?
[01:54:21] <zert> ладно, хаскельщики его используют из-за крастноглазия
[01:54:23] <komar> В любом можно.
[01:54:29] <komar> Он просто удобнее. :)
[01:54:30] <zert> но камлистам-то он зачем?
[01:54:34] <zert> komar: ты наркоман
[01:54:39] <komar> Я не наркоман.
[01:54:49] <zert> пиздец не бывает удобнее
[01:54:49] <komar> Я начинал с svn'а, ушел на git и потом пересел на darcs.
[01:55:13] <zert> я начинал с rcs, потом cvs -> svn -> darcs -> git
[01:55:26] <komar> git тупой.
[01:55:27] <zert> даркс — это цвс
[01:55:33] <ygrek> тупой - круто
[01:55:34] <zert> по духу
[01:55:46] <zert> да, вцс должна быть тупой
[01:55:52] <zert> а погромист умным
[01:55:59] <komar> Да ну вас нафиг.
[01:55:59] <zert> а с дарксом наоборот
[01:56:03] <zert> и тебя
[01:56:08] <zert> иди угнича потрогай
[01:56:09] <zert> ггг
[01:56:29] <komar> http://projects.haskell.org/camp/unique
[01:56:33] <komar> Как бы.
[01:56:39] <komar> zert: я сейчас обижусь, ага.
[01:56:39] <ygrek> 6 минут на get 9МБ репку из 400 патчей
[01:56:45] <ygrek> уродство
[01:56:49] <komar> Пичяль.
[01:57:07] <ygrek> всё
[01:57:10] <ygrek> всем спать
[01:57:23] <Typhon> гит не тупой, кстати, изощрённый слишком
[01:57:58] <komar> Он работает тупо.
[01:58:02] <komar> Т.е. просто.
[01:58:22] <komar> Это хорошо, конечно, но мне больше нравится дарксовая patch theory.
[02:00:36] <zert> нахрена она нужна, если неэффективна?
[02:00:52] <zert> хорошая теория подтверждается практикой
[02:00:57] <zert> а плохая — опровергается
[02:01:03] <komar> *если она тормоза
[02:01:09] <komar> *тормозна, блин.
[02:01:23] <zert> а в чём ещё эффективность измерять?
[02:01:30] <komar> Она _работает_. Может проверить, повторив то же, что и в видео.
[02:01:35] <zert> гггг
[02:01:39] <zert> а что не работает?
[02:01:57] <komar> А как ты ее еще опровергнешь?
[02:02:01] arhibot вышел(а) из комнаты
[02:02:07] <komar> Или подтвердишь.
[02:02:20] <zert> гит не тормозит, а даркс тормозит
[02:02:26] <zert> вот и всё подтверждение
[02:02:27] <Typhon> гит коммиты теряет ^_^
[02:02:30] <komar> zert: вот гит не увидит зависимостей в изменениях. Он тупой, да.
[02:02:35] <zert> Typhon: как так?
[02:02:38] <zert> куда теряет?
[02:02:44] <Typhon> ну были ж посты про это
[02:02:59] <zert> это где удаляют бранч и коммиты пропадают?
[02:03:02] <komar> zert: малаца. Теперь, если производительность для тебя важна, _не_ используй darcs. Я так и делаю.
[02:03:04] <Typhon> там нужно сложные мерджи делать для этого, да, но типа фиксировали случаи. это правда дарксеры репортили
[02:03:16] <zert> а
[02:03:28] <komar> А пока в моем недокоде все действия занимают долю секунды, я не особо над этим заморачиваюсь.
[02:03:33] <Typhon> zert, http://r6.ca/blog/20110416T204742Z.html
[02:04:07] <komar> Зато мне важно, чтобы история не была черной дырой, и отдельный коммит (или часть коммита) можно б было легко отменить, не затрагивая другие.
[02:04:16] <komar> С этим даркс справляется хорошо, гит — плохо.
[02:04:35] <komar> Это я как бы объясняю, почему я (и, может, кто-то еще) предпочитаю даркс.
[02:05:10] <komar> В отличие от призыва «не пилите велосипедные пакетные менеджеры», на даркс переходить я никого не заставляю. Если вижу чужой репозитарий в гите — не матерюсь.
[02:05:17] <komar> (в отличие от svn, например)
[02:05:57] <Typhon> cvs , bzr и darcs -- вот кто должен умереть!
[02:06:06] <Typhon> (разработчики, точнее, которые публичные либы там хранят)
[02:06:16] <komar> Typhon: я тебя убью за то, что в списке нет svn'а.
[02:07:01] <Typhon> svn тоже туда можно, но меньше бесит.
[02:07:23] ygrek вышел(а) из комнаты
[02:07:23] <Typhon> сейчас не встречается почти, а раньше на работе svn был, поэтому установлен он был хотя бы, склонировать всегда можно было
[02:08:00] <komar> Subversion — это не только система контроля версий, но еще и болесть головного мозгу.
[02:08:51] <komar> Вот иногда клонируешь git-репозитарий, а там trunk/, branches/...
[02:09:05] <komar> И рука тянется за топором.
[02:09:08] <Typhon> btw, как в дарксе можно отменить отдельный коммит? а если следующий коммит (патч?) "использовал" изменения от отменяемого, што будет?
[02:09:34] <komar> Будет депенденс еррор.
[02:09:49] <komar> Разница с git'ом в том, что в гите депенденс еррор будет в любом случае.
[02:10:13] <zert> git revert
[02:10:20] <Typhon> с другой стороны "отменить коммит" доовольно странное желание
[02:10:22] <zert> наложит обратный патч
[02:10:31] <zert> и всё будет в истории
[02:10:39] <zert> а то отменять — это какой-то пэ
[02:11:01] <zert> так можно будет кучу патчей отменить и херня будет
[02:11:09] <zert> ад и кровавая содомия
[02:11:13] <komar> Переписывание истории или добавление коммита, отменяющего другой коммит — в данном случае это неважно.
[02:11:31] <zert> как это неважно?
[02:11:41] <zert> переписывание истории — зло
[02:11:51] <komar> zert: как я отменю изменение с foo на bar в файле, где вместо bar уже красуется buz?
[02:11:53] <zert> как это в распределёнке будет смотреться?
[02:11:56] <komar> Да пофиг.
[02:12:01] <komar> Хосспади.
[02:12:04] <zert> даркс — гамно
[02:12:07] <zert> запретить!
[02:12:09] <zert> удолить!
[02:12:15] <komar> zert: спасибо за содержательную беседу, иди спать.
[02:12:17] <zert> ЕГГОГ ИНЖАЛИД ДЕЖИЦЕ
[02:12:45] <komar> «Неважно» — значит «можно и то, и другое, в зависимости от настроения».
[02:13:25] <komar> Переписывание истории — весьма удачная штука, когда в код нечаянно ушли пароли (или, в моем случае — в вику ушли контакты, которые я не хотел светить).
[02:13:39] <komar> Если есть возможность переписать историю — это прекрасно.
[02:14:16] <komar> Плохо, если кодобибизяны будут применять эту фитчу не к месту, но я не согласен жертвовать своей свободой делать чо хочу ради них.
[02:15:45] <zert> в гите тоже можно при желании переписать историю
[02:15:50] <komar> Я в курсе.
[02:16:13] <zert> но так как там это делается нетривиально, оно будет использоваться по назначению
[02:16:24] <komar> Я бы еще добавил, что там это делается «неочевидно», но это мое собственное неосиляторство.
[02:16:33] <zert> да, неочевидно — это плюс
[02:16:49] <zert> ну и в распределёнке подобная фича не нужна
[02:17:00] <zert> спать пойду
[02:17:03] <zert> иди ты тоже спи
[02:17:08] <zert> ибо ты норкомант и норкомант
[02:17:17] <zert> пусть тебе приснится угнич и неугнич
[02:17:27] <zert> потрогают тебя своими потными ладошками
[02:17:33] <komar> В дарксе неочевидность тоже есть, но разница куда меньше — между unrecord и obliterate.
[02:17:39] <komar> (последний я никогда не помню)
[02:18:18] zert вышел(а) из комнаты
[02:18:34] <komar> zert, я за угничей-неугничей обижусь, я тебе сказал уже.
[02:20:47] <komar> О! Черт, забыл воспользоваться возможностью. Как в git'е узнать, куда был перемещен файл, который был когда-то, но которого уже нету?
[02:21:10] <komar> Мне не для холивара, а для запиливания фитчи ради.
[02:22:13] <Typhon> git help diff  и потом там ищи rename
[02:22:18] <Typhon> там есть какой-то флажок, как обычно в гите
[02:23:25] <Typhon> ой, не diff а log
[02:31:40] <komar> Не найду.
[02:32:53] <komar> git init && git touch 1 && git add 1 && git commit -m 'add 1' && git mv 1 2 && git commit -m '1 -> 2'
Как узнать, где теперь файл 1?
[02:37:42] <Typhon> да, посмотрел, про rename'ы там другое
[02:46:05] <komar> В дарксе, кстати, решилось с помощью darcs chagnes --summary 1
[02:47:19] <komar> Кстати, если хотите позлить пользователей даркса — спросите, в какую жопу в дарксе заныканы хеши коммитов и как их использовать.
[02:47:34] <komar> Если в ответ последует объяснение, почему хеши не нужны — значит, удалось.
[02:51:44] Typhon вышел(а) из комнаты
[09:59:55] arhibot вошёл(а) в комнату
[10:24:34] ermine вошёл(а) в комнату
[10:26:51] Kakadu вошёл(а) в комнату
[10:38:17] arhibot вышел(а) из комнаты
[11:37:58] arhibot вошёл(а) в комнату
[11:50:49] arhibot вышел(а) из комнаты
[12:02:21] zert вошёл(а) в комнату
[12:03:36] <zert> хеши нужны
[12:08:24] ygrek вошёл(а) в комнату
[12:22:34] <ygrek> komar: git log --summary -- 1
[12:26:46] <komar> [komar@pavilion ~/gittest]$ git log --summary -- 1
commit 3595b360bfe45baf6b3382381dcc5518bf6c54ff
Author: Alexander Markov <apsheronets@gmail.com>
Date:   Sun May 29 02:28:41 2011 +0400
    add 1
create mode 100644 1
[komar@pavilion ~/gittest]$
[12:26:53] <komar> Простите за неровный почерк.
[12:27:08] <ygrek> значит дефолты разные
[12:27:14] <ygrek> попробуй --follow
[12:28:28] <komar> То же самое. У тебя какая версия гита?
[12:29:30] ygrek вышел(а) из комнаты
[12:29:56] ygrek вошёл(а) в комнату
[12:30:11] <ygrek> 1.7.2.5
[12:30:14] <ygrek> -M ?
[12:30:57] <komar> Гм, тот же гит.
[12:31:43] <zert> гит уже не торт
[12:32:03] <komar> О, заработало.
[12:32:10] <ygrek> что поменял?
[12:32:21] <komar> Новый реп создал.
[12:32:31] <komar> Причем такой же.
[12:36:35] ygrek вышел(а) из комнаты
[12:36:37] ygrek вошёл(а) в комнату
[12:39:39] ygrek вышел(а) из комнаты
[12:40:20] ygrek вошёл(а) в комнату
[13:55:27] <gds> про amall: дошёл до того, что минималистический "сервис" пишется так: https://bitbucket.org/gds/amall/src/258a8eaae1ec/test_http_service.ml , а работает так: http://paste.in.ua/2472/
[14:57:09] Typhon вошёл(а) в комнату
[16:45:52] ygrek вышел(а) из комнаты
[16:46:14] ygrek вошёл(а) в комнату
[18:12:48] Typhon вышел(а) из комнаты: Replaced by new connection
[18:14:57] Typhon вошёл(а) в комнату
[18:43:20] ftrvxmtrx вошёл(а) в комнату
[19:27:51] komar вышел(а) из комнаты: Replaced by new connection
[19:27:51] komar вошёл(а) в комнату
[19:39:33] <komar> Так, объясните мне, почему топлевел выдает:
# (* " *)
* wtf??
[19:44:56] <ygrek> хи
[19:45:10] <ygrek> может он показывает что контект - "внутри комментария"
[19:45:22] <komar> Вот, блин, сдалась ему эта кавычка.
[19:45:27] <ygrek> ну да -
# (*
*
[19:45:46] <komar> Ну я понимаю, а почему на него кавычка так влияет?
[19:49:42] <gds> а это -- известный, классический дебилизм.  Обычно проще игнорировать, чем пытаться понять хвранцузов.
[19:50:02] <ygrek> ну правила лексера такие
[19:50:05] <ygrek> rtfm :)
[19:50:34] <gds> вот спасибо :]  Я скорее удивляюсь тому, зачем правила лексера такие.
[19:51:01] <komar> Скорее всего не «зачем», а «так проще» или «у нас такой лексер. что переделывать через жопу получится».
[19:52:02] <gds> вроде бы проще было бы как раз пропускать всё, кроме *), в поисках конца комментария, нежели искать кавычку.
[19:53:08] <ygrek> ну представь код вида
print_endline "*)"
[19:53:23] <ygrek> и теперь закомменть его
[19:53:53] <ygrek> и так и так зло
[19:54:36] <gds> #if 0
..
#endif
хотя, если с этой стороны смотреть, то тоже можно понять.
[20:02:26] <gds> домохозяйке на заметку: несколько top-level module values можно легко закомментировать, закатав их в функтор, что-то типа
module Q(W : sig end) = struct
... содержимое ...
end
[20:04:40] <komar> Я таким образом выполнение модулей откладываю.
[20:04:46] <komar> Чувствую себя на стройке с микроскопом.
[20:11:05] <ermine> микроскоп цифровой или чугунный?
[20:11:20] <gds> иногда бывает надо.  Однако надо подумать насчёт сайдэффектов -- может не всё есть смысл вычислять при вычислении модулей.  Более чистый дезайн, что ли.  Хотя он геморнее обычно.
[20:14:02] <ermine> а что вы тут вообще творите? я только щас заглянула в этот таб, а скроллить вверх лениво
[20:15:10] <gds> пробуем в топлевеле исполнить (* " *)
[20:16:31] <ermine> ну, даже в tuareg-mode с этим проблемы
[20:18:54] <komar> В виме нормально.
[20:18:56] <komar> Я аж офигел.
[20:25:49] <ygrek> ну вим он же редактор
[20:27:03] <komar> У него по жизни с синтаксисами проблемы.
[20:27:09] <komar> А тут на тебе — правильно распарсил.
[20:50:26] Kakadu вышел(а) из комнаты
[21:07:00] arhibot вошёл(а) в комнату
[21:10:45] ygrek вышел(а) из комнаты
[21:12:38] komar вышел(а) из комнаты
[21:12:45] komar вошёл(а) в комнату
[21:33:00] <Typhon> gds, а почему amall без оазиса? :-) олсо, не собирается что-то
File "it_type.ml", line 44, characters 19-31:
Error: Unbound module Subarray
[21:34:04] ermine решила наконец приколотить постгрес к erm_blog
[21:35:12] <Typhon> походу iteratees надо поставить, там есть сабаррэй (хотя он есть и в it_type.ml). но в iterattees который я скачал, нету мейкфайла, а run.sh собирает, но не ставит
[21:36:35] <ermine> Typhon: вот такое оно камло такое гавно
[21:37:23] <ermine> недостаточно иметь одного вдохновения, чтобы потрогать камло
[21:41:06] ygrek вошёл(а) в комнату
[21:44:16] <gds> Typhon: без оазиса -- потому что не разобрался.  Реально, pkg_iteratees надо.  А почему не ставится -- сейчас разберусь.
[21:46:22] <Typhon> чтобы pkg_iteratees поставить, надо б и к итератам приделать билдилку и ставилку. сейчас ни меты, ни мейкфайла. http://paste.in.ua/2476/ может туда оазис? типа, потренироваться на кошках? :-)
[21:46:59] <gds> всё там есть.  см. http://hg.ocamlcore.org/cgi-bin/hgwebdir.cgi/ocaml-iteratees/ocaml-iteratees/
[21:47:02] <Typhon> (итераты скачивал с форджа, тарбол. может несвежий взял?)
[21:47:16] <Typhon> ага, точно несвежий.
[21:47:22] <gds> тарбол, вот в чём дело.
[21:47:39] Kakadu вошёл(а) в комнату
[21:48:29] <gds> наверное, положу свежий тарбол ща.
[21:48:31] <Typhon> о, сейчас всё круто с итератами, надо бы тогда в Files на фордже новый тарбол вытащить или где-то большими буквами написать, что в репке смотреть надо.
[21:49:44] <ermine> итераты - местная мода?
[21:49:50] <gds> да там много ломаю в последнее время, поэтому решил подождать более-менее стабильного варианта.
[21:50:11] <gds> ermine: итераты -- надёжный, быстрый, декларативный способ обработки входных потоков.
[21:51:13] ermine с сомнением смотрит на gds
[21:51:35] <gds> чому?..
[21:51:52] <Typhon> ermine, итераты нужны для gds'овского минивебсервера
[21:53:59] <ermine> Typhon: до сих пор и в громадном вебсервере не пофиксили утечку, а вы тут про мини говорите :) а мини точно не юзает lwt?
[21:54:22] ermine задумалась - заюзать macaque для erm_blog или нет
[21:54:44] <Typhon> gds, с установаленными итератами та ошибка не возникает, подпатчить _tags и всё будет ок. теперь, однако, захотел модуль Postgresql. dbi_g -- вот кто
[21:54:50] <Typhon> ermine, зачем тебе бд для блога? oO
[21:54:56] <Typhon> *dbi_pg.ml
[21:55:59] <Typhon> gds, dbi, всё-таки, клёво было бы в отдельный пакетище вынести :-)
[21:56:35] <Typhon> ermine, мини -- использует. вот у ygrek есть, кажется, http сервер бел лвт, но он не показывает! :-(
[21:57:13] <ermine> Typhon: есть такой паттерн - хранить в базе логин и посты и комменты
[21:57:58] <ygrek> Typhon: вот ненадо мне на нежную психику давить
[21:58:57] <ermine> надеюсь, что у всех всё утекает
[21:59:04] <gds> Typhon: что именно подпатчить в _tags, недопонял.
[21:59:22] <Typhon> ermine, только не говори, что ты хочешь ещё "регистрацию" сделать?! в файлах храни, версионированных ^_^
[22:00:11] <ermine> Typhon: посты я могу в гит сунуть, а комменты куда?
[22:00:16] <Typhon> gds, а, в _tags pkg_iteratees есть уже. тогда ничего :-) btw, оазис бы сказал прямым текстом, что у меня нет модуля
[22:00:30] <gds> Typhon: pkg_postgresql прописано в _tags.  Другое дело, что при теге pkg_xxx плагин не проверяет наличие пакета xxx.
[22:00:33] <Typhon> ermine, подключить disqas или как там его
[22:00:55] <ermine> Typhon: аштойта?
[22:00:59] <gds> dbi -- вынесем, но я этим не могу заняться прямо сейчас.
[22:01:15] <ermine> Typhon: а логин свой - сунуть в ocsigenserver.conf?
[22:01:17] <Typhon> ermine, http://disqus.com/
[22:01:48] <gds> про "оазис прямым текстом" -- логично, есть смысл, будем думать.
[22:02:12] <Typhon> логин свой, пока не придумал, но по идее, можно просто в гит пушить и тогда нужные ssh ключи на серваке и всё. а бд для логина -- оверкилл же
[22:02:48] <Typhon> gds, ага, советы, как "сделать так чтобы работало" есть? я пока хочу просто выпилить весь dbi попробовать локально.
[22:03:27] <gds> dbi выпилить локально -- ничего проще нет.  amall.mllib отредактировать точно надо, может ещё по мелочам.  оно оттуда берётся в либу.
[22:04:49] <ermine> Typhon: а как нонче модно логиниться, чтобы сделать коммент? опенид в моде еще?
[22:05:09] <ygrek> ermine: у меня точно не течёт, многамиллионов запросов в день подтверждают :)
[22:05:47] <Typhon> модно твиттеры и фейсбуки прикручивать. но я против, мне опенид больше по нраву. ну то есть, точно ясно, что отдельная регистрация для блога -- это плохо.
[22:05:48] <ermine> ygrek: лвт из даркса?
[22:06:13] <Typhon> судя по названию модуля, у ygrek'а на libev просто
[22:06:17] <ygrek> ты ещё х-ль упомяни
[22:06:29] <ygrek> libevent
[22:06:59] <gds> Typhon: если хочешь, смело рисуй субпакет nodbi, а там что-нибудь придумаем.  В будущем, вероятно, это будет глагне пакет, а остальному коду добавим pkg_dbi2 какое-нибудь.
Но тут есть такой момент: очень не хочется, чтобы у меня зламалося.  Может давай оформи[м] named branch, а я буду мержить в default периодически, когда не будет авралов?  Либо, наоборот, своё-нужное буду в ветке stable держать.  Пофигу, но советуют обычно второе, хотя хз, как правильно.
[22:08:55] <Typhon> ygrek, а почему event а не ev?
[22:09:06] <ermine> так, значит под вопросом только комменты
[22:10:05] <Typhon> ermine, ещё в последнее время модно без комментов блоги делать, типа на мыло отправлять свои пожелания. но не всегда круто.
[22:11:12] <ermine> Typhon: хранить комменты на стороне тоже не круто
[22:12:07] <Typhon> ermine, про disqus? да, не идеал, + оно всё жсное какое-то сильно. но как вариант -- вариант.
[22:12:49] <Typhon> gds, принял. про "сломалось" понятное желание :-)
[22:13:39] <ermine> да ваще страшно
[22:15:19] <gds> зарелизил ocaml-iteratees-0.3.
[22:15:29] <Typhon> ещё вариант: поднимать рядом с вебсервером почтовый, для каждого поста генерить отдельное имыло, для комментировать пусть туда шлют люди письма. на странице с постом списком отображать линки на статические текстовики с комментами %)
[22:16:49] <Typhon> "One thing to note is that Lwt is implemented as a library and can compile down to any platform that OCaml targets, including Javascript." i doubt it, но кто-то может пробовал? лвтшное что-то компилировать в жс
[22:17:21] <Typhon> (источник, твиттер  http://twitter.com/#!/strlen )
[22:17:44] <ermine> Typhon: примерь свою мыльную систему к таким ресурсам как жуйка и похихикай
[22:18:53] <ermine> тогда ладно, пора заняться гиськой и постить туда
[22:20:07] <gds> Typhon: по логике, если мне (одному человеку/фирме) надо, чтобы не сломалось, то именно на одного человека логично заводить бранч, чтобы использовать его в случае несовместимых изменений?  Туплю, не могу понять, как правильно оформить.
[22:20:37] <ygrek> один бранч - твой, один - под новьё
[22:21:02] <ygrek> Typhon: так исторически сложилось, тогда libev биндинги кривые были
[22:21:44] <gds> дефолтный бранч под новьё, интересное всем, как я понимаю, а мой -- под "то, что из этого новья пригодно для меня", т.е. именованный/дополнительный/отдельный, как-то так?
[22:35:48] <Typhon> gds, для того, чтобы заработало, выпилил все упоминания dbi, + добавил в _tags и META cadastr, установив его из репки. а cadastr.ml выпилил тоже
[22:38:40] <ermine> ау, маркдаун
[22:38:54] <ermine> Kakadu: ты сессию сдал?
[22:39:22] <Kakadu> да вот 31 следующий экзамен
[22:39:35] <Kakadu> у меня другая беда - ноут умирает
[22:39:41] <ermine> по какому предмету?
[22:40:14] <Kakadu> ermine: ой, там сложное название. Что-то про инженирию программ и знаний
[22:40:44] <ermine> значит, маркдауна придеца делать мне?
[22:40:58] <ermine> пока тут караулят момент кончины ноута
[22:41:05] <Kakadu> в худщем случае
[22:41:29] <Kakadu> я тут на днях почти впилил списочки ol
[22:41:33] <Kakadu> да глючит падла
[22:41:57] <Kakadu> у меня вообще после зачета по сетям какой-то расслабон пошел.
[22:42:08] <Kakadu> не знаю как физику буду учить
[22:42:11] <Typhon> http://paste.in.ua/2477/ что-то у меня topfind сломался :-(
[22:42:20] <Typhon> Kakadu, E=mc^2
[22:42:54] <Kakadu> Typhon: да, нам на послдений лекции вывели
[22:43:41] <ermine> можно еще талдмут ландсберга почитать
[22:44:30] ermine не так давно пробовала этот тарлмуд почитать, дошла там до какой-то сложной формулы (на первых страницах) и не смогла продолжить дальше
[22:45:06] <gds> Typhon: cadastr.ml выпиливать было не необходимо, хотя и приемлемо.  Или необходимо?
Про dbi -- посмотри, если в целом будешь пользоваться, то будет круто сделать по-человечески всё.
И я понял, как сделать так, чтобы мои проблемы решить.  Мне будет точно не сложно вот что: увидев, что после каких-либо коммитов у меня фатально не работает, тут же отвести ветку от последнего работающего коммита и её использовать.  То есть, коммить в default смело.  Однако не знаю, что с dbi сделать так, чтобы было нормально.
[22:46:05] <ermine> Typhon: а что надо почитать про марка дауна, чтобы понять как его парсить?
[22:46:59] <Kakadu> ermine: а вот если ноут почти полтора года использовать на каждый день, то это нормально, что он заболеет и у него будет высокая температура?
[22:48:36] <Typhon> gds: выпилил кадастр, так как поставил его из репки, а если не ставил его, то он при #require "amall" ругался на undefined Cadastr. по-моему, дби надо просто отдельным пакетом делать. мне вообще хочется, чтобы был отдельный пакет для легковесного хттп (парсер + сервер), но не знаю, насколько тебе такое удобно. но как минимум дби вынести, думаю, можно?
[22:48:45] <Typhon> Kakadu, разбери @ почисть от пыли
[22:49:12] <Kakadu> Typhon: разобрал, пыль не нашел
[22:49:19] <ermine> Kakadu: по-разному бывает, у ребенка моего ноут асер спустя год потерял кнопку экрана, поменяли матрицу с интерфейсом, спустя год опять та же байда :) у другого ноута тошиба спустя два года тоже отвалился экран, у третьего ноута чота умерло на материнке достаточно быстро
[22:49:20] <Kakadu> тока чуток на лопастях
[22:49:29] <ermine> пока жив макбук, которому скоро три года
[22:49:43] <Typhon> ermine, http://daringfireball.net/projects/markdown/syntax ну вот вроде "официальная" штука.
[22:50:31] <Kakadu> ermine: я думал сонька надежная, А она брыкается.
[22:52:24] <ermine> а еще есть eee pc, еще из первой волны, еще живой и не кашляет
[22:53:51] <ermine> Typhon: там не нашлос по поиску "pars"
[22:54:02] <ermine> придется вникать
[22:54:20] arhibot вышел(а) из комнаты
[22:55:19] <Typhon> https://github.com/MFP/OcsiBlog/blob/more-markdown-compat/simple_markup.ml вот для подмножества парсер :-)
[22:55:52] <Typhon> https://github.com/MFP/OcsiBlog/tree/more-markdown-compat/ даже вот так
[22:56:10] <ermine> да я чую, что буду юзать комбинаторные парсеры
[22:56:30] <Typhon> использую Planck тогда, или как там его, свежего, зовут :-)
[22:56:36] <Typhon> *зуй
[22:57:30] <ermine> кого?
[22:59:06] <gds> Typhon: про кадастр -- понял.  Вообще, какое-то несоответствие между "компилируется" и "работает в топлевеле" -- как я понимаю, из-за того, что ocamlbuild резолвит ссылку на модуль так, что при этом линкуется cadastr.ml, а вот #require загружает .cma, а там, если cadastr.cm* нет, то.. сливайте воду, что ли.
[22:59:36] <ermine> Kakadu: а вообще это правильно, что ноуты подыхают, иначе бы не было мотивации к апгрейдам
[22:59:38] <Typhon> ermine, https://bitbucket.org/camlspotter/planck/
[23:00:45] <gds> про http и dbi -- да, всё это надо в отдельные пакеты.  Вообще, текущая ситуация сложилась исторически -- удобнее пуллить из одной репки, нежели из 8 (если посчитать, сейчас порядка того и выходит; многое уже разнёс).  Плюс к тому, в меркуриале есть subrepositories, которые я раньше не умел, да и сейчас как-то весьма топорно умею, они меня порой озадачивают.
[23:01:52] <Typhon> они немного туповатые в hg, при пуше в главную репу, хотят пушить в детей, зачем-то (если дети hg-шные).
[23:03:09] <Kakadu> ermine: вообще ты права, имет дома один нормальный компьютер это не годится для компьютерщика
[23:03:19] <Kakadu> вот куплю в августе себе i7
[23:03:23] <Typhon> ermine, в рассылке анонс был недавно. адрес новых архивов что-то плохо с первого раза гуглится
[23:03:59] <Typhon> хорошо, что я не этот ваш компьютерщик и у меня дома таки есть один нормальный ноут
[23:06:05] <gds> Typhon: ты правильные мысли в целом даёшь про "разбить".  В будущем так всё и будет, это точно.  Другое дело, что я даже детище своё оверблдное не могу нормально оформить -- я, как дурак, "на двух работах", а ещё кайф от жизни хочется получить, семья и всё такое, вон и лето уже почти, и burnout на носу.
[23:06:39] <gds> dbi отдельным пакетом -- надо, я даже модное гламурное название придумал, ocamldbi2.  Оно очень оригинально, но, в то же время, свежо.
[23:07:51] <Typhon> да, жаль, что odb.ml не совсем (совсем не?) готов :-) было бы просто сделать (пусть даже пустой пакет need_for_work ) и ставить его так, чтобы odb.ml депендансы вытягивало.
[23:09:58] <Typhon> так,  а IO_Lwt не ставится с амалом, я его в своём сервисе, получается, сам должен сделать?
[23:10:42] <gds> Typhon: печальная новость.  Я начал разносить это по библиотекам :)  ocaml_monad_io оно зовётся, ща урл скажу.
[23:10:59] <Typhon> ага, я его поставил
[23:11:02] <Typhon> урл знаю
[23:11:18] <Typhon> оно даже в META есть
[23:13:47] <gds> на всякий случай, урл репки -- https://bitbucket.org/gds/ocaml_monad_io
[23:13:55] <ermine> Typhon: а оно умеет utf8?
[23:14:20] <Typhon> ermine, не знаю, я ж его тебе порекомендовал, чтобы ты потестила ^____^
[23:14:53] <ermine> я даже примера не вижу как юзать
[23:15:25] <gds> ermine: а откуда ты utf8 получаешь?  А то у меня есть идейка!
[23:16:16] <ermine> gds: ну сайт же утфшный
[23:16:55] <ermine> у меня есть свои наколенки с монадичным парсером...
[23:17:00] <Typhon> gds, у тебя вроде всё ок, а у меня вот топфинд сломался! :-(
[23:17:24] <ermine> у дядюшки gds всё найдется
[23:17:41] <ermine> впрочем, у Typhon тоже
[23:18:04] <ermine> бери и копипасти
[23:20:19] <gds> ermine: сайт utf8 -- замечательно!  utf8 вообще хорошая штука.  парсер на монадах -- вариант, но там с чанками бида (по символу/байту за раз -- слишком онально, по блокам -- итераты выдумаешь (но это вот как раз не плохо)).
[23:21:53] <Typhon> а, ничего не сломалось у меня, просто есть monad_io.lwt, а в META у amall -- просто monad_io.
[23:22:00] <gds> Typhon: подозреваю свои meta, если других в последнее время не ставил и ocamlfind/ocaml/окружение не менял.  Нехорошо, вообще, ломать topfind людям.  Видел про #camlp4o, понять не могу.  ocamlfind printconf?
[23:22:19] <ermine> gds: да нету у меня проблемы с utf8 в монадичном парсере
[23:22:46] <gds> ermine: проблемы в производительности тоже нет, или пока неизвестно?
[23:23:00] ermine склонировала порекомендованную репку - завтра посмотрим, что можно стырить
[23:23:15] <Typhon> (* ну то есть, dynlink продолжает не грузиться, но с monad_io понял в чём дело *)
[23:23:36] <Typhon> в printconf всё ок, в findlinb.conf и ld.conf пути тоже вроде правильные
[23:23:50] <gds> ermine: смотря какую.  Не все репки одинаково полезны.
[23:23:53] <ermine> там главное, если маркдаун не заставит показывать ошибку с точными координатами в тексте
[23:25:09] <ermine> gds: если буфер - это строка и int i, то нет разницы на сколько двигать i - на 1 или на сколько задано в utf8, поэтому я не вижу проблемы в парсинге
[23:25:33] <gds> Typhon: не понял, почему же у меня работает?  По логике, у меня не должно работать, если стоит зависимость "monad_io".
[23:26:51] <gds> ermine: если так подходить, то согласен.  И всё даже весьма просто решается.  Сам тоже предпочитаю с utf8 работать простыми способами, для меня camomile во многих случаях тяжёл.
[23:27:03] <Typhon> gds, может быть у тебя всё раньше рядом лежало, а после вынесения monad_io отдельно, тоже работать не будет? вообще, имеет ли смысл monad_io.lwt в требования к amall пихать ?
[23:30:39] <gds> Typhon: раньше -- лежало, но я делал ocamlbuild -clean сознательно много раз с тех пор, и относительных путей вида "../ocaml_monad_io" у меня точно нет.  И вот что-то мне казалось, что в требованиях указывают чисто главные пакеты, и подразумевается, что подпакеты там тоже есть (либо, если нет, будет ошибка компиляции/линковки).  Мог ошибаться, и, 50/50, ошибаюсь.
Если зависимости findlib'а таковы, что указываются подпакеты тоже, то надо однозначно пихать.
[23:31:23] <Typhon> вроде подпакеты надо. для lwt.unix уазывают lwt.unix, иначе только lwt загрузится и чуда не будет
[23:35:36] <gds> я хочу чуда!1111  Но, так как "у меня всё работает" (дебильная отмазка, употребляю редко), прошу, пропиши там то, что надо (как видишь сам), закоммить и запушь это дело.  Про бранчи решили -- это мой личный гемор, так правильнее.  Про администрирование прав доступа -- не знаю, как на битбакете с этим.  Ща почитаю.
[23:37:59] <Typhon> I.return содержит поле rs_reason_phrase -- оно в RFC разве не однозначно определено к коду?
[23:38:28] <gds> если ввёл, то не однозначно.  Сейчас уточню, так как тоже слегка напрягает.
[23:39:13] <gds> Typhon: на amall выдал тебе права write (там есть ещё admin -- если write это мало, сообщи; сам не вникал в их модель безопасности).
[23:39:55] <Typhon> write должно быть достаточно, чтобы попушить. а с дби что, пушить его выпиливание?
[23:40:23] <gds> Typhon: если надо не только на amall, сообщи.
Кстати, дамы и господа, кто желает присунуть в мои ждущие репки, сообщите.  Как во всём опенсорсе, я рад не-дебильным патчам, и всё такое.
[23:40:58] <ermine> gds: ну проблем там нет, где данные надо получить целиком и сжевать полностью и выплюнуть в цельном виде
[23:41:11] <Typhon> в camlunity, если что, можно репки создавать, и туда всё камлунити присовывать сможешь ^___^
[23:41:55] <gds> Typhon: с dbi -- как думаешь, если сделать пакет amall, равный текущему "amall минус dbi", и amall.dbi, равный "то, что забрали из amall", то, по идее, нормально будет "для внешнего мира"?  И, уточню, мне нужно будет всего лишь добавить тег "pkg_amall.dbi"?
[23:42:24] <gds> всегда хотел присунуть всё камлунити в какую-нибудь одну репку.  В одно место, так сказать.  :]
[23:42:33] <ermine> Typhon: у меня щас главная задача - сайтик www.jabber.ru, но как раз для него хочу сначала отплясаться на erm_blog с этими частями типа гиськи и парсинга
[23:43:24] <ermine> я вообще сегодня добавила в erm_blog два модуля - erm_config и erm_pgsql, код которых скоммуниздила из основного проекта, но, видимо, это не то
[23:44:53] <ermine> а erm_blog видимо мало для camlunity или либлу можно заюзать под каждый отдельный блог
[23:45:14] <ermine> а для этого как раз хорошо упрятать логин в постгрес
[23:45:45] <ermine> вот засада жеж
[23:46:26] <Typhon> gds, а вот я смогу собрать amall без amall.dbi? с оазисом я бы просто флажок поставил with_dbi включенный/отключенный по умолчанию,  и в конфигуре --enable-x --disable-x передавал, а без него как? насчёт внешнего мира не совсем, можеть быть, получится отделаться pkg_amall.dbi -- в am_All.ml  у тебя было module Dbi = Dbi или что-то типа того. вообще, может добавить подпакет, а заодно и оазис? :-)
[23:47:29] <Typhon> ermine, блогодвижок, который просит бд для своей работы -- FOUUUU :-) это должно быть опционально, если уж так хочется, к.м.к.
[23:48:24] <ermine> Typhon: а wordpress уже не просит бд?
[23:49:27] <ermine> нуланна, буду хранить шифрованный пароль в файлике и каждый раз поднимать его из файлика и сравнивать
[23:50:08] <ermine> наверное никакой разницы, кто берет с диска - постгрес или ты сам?
[23:50:26] <gds> Typhon: про reason_phrase -- "The individual values of the numeric status codes defined for HTTP/1.1, and an example set of corresponding Reason-Phrase's, are presented below. The reason phrases listed here are only recommendations -- they MAY be replaced by local equivalents without affecting the protocol.".  А ещё там рядом написано, что статусы http вообще могут расширяться (важны только умение сервера выдать правильный из имеющихся, умение клиента обработать имеющиеся, либо, если не может, хотя бы по первой цифре кода рассказать, что случилось вкратце).
Однако, можно запилить вообще вариантный тип, наподобие [= `Bad_request | `Not_found | `Server_internal_error | ... | `Gen_error of int * string ].  Сейчас запиливать не буду, хотя идея вроде приемлемая.  (т.е. если надо что-то типа "404 Not found, you m.f.ker!", то `Gen_error (404, "...")).
[23:51:52] <ermine> завтра заимплементирую подъем пароля из файлика
[23:52:17] <ermine> надо будет обвешать форму логина всякими csrf и max_use=1
[23:53:27] <ermine> gds: кстати, csrf, а ты уже умеешь их в минивебсервере делать?
[23:54:24] <gds> Typhon: про подпакеты -- точно надо, про оазис -- у меня реально руки не дошли.  Давай в дефолт-ветке оформи оазис, а я там уже разберусь и внесу изменения так, чтобы у меня было ок.  Из am_All.ml убирай dbi смело, если мешает.  Я ориентируюсь на то, как будто это другой пакет уже (ocamldbi2 например).
[23:55:26] <gds> ermine: csrf -- вроде бы не то, что нужно _уметь делать_ :)  Или я не туда погуглил?
[23:56:20] <ermine> gds: нет конечно, этим eliom занимается, а не ocsigenserver
[23:57:04] <gds> ermine: "Сross Site Request Forgery" -- это оно?  Если да, то это не нужно уметь, я считаю.
[23:57:26] <ermine> gds: это
[23:57:48] <ermine> gds: а штука полезная
[23:58:15] <ermine> не сможешь тупо сабмитить в знакомую форму
[23:58:22] <gds> ermine: как forgery может быть полезной штукой, исходя из названия?
[23:59:32] <ermine> gds: ну ты делаешь вредного бота, который будет сабмитить спам в форму, бот не будет считывать форму с сайта, а просто сабмитить свой спам сразу
[23:59:36] <Typhon> КО: под csrf ermine подразумевает csrf protection
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!