Home
Objective Caml
ocaml@conference.jabber.ru
Четверг, 2 декабря 2010< ^ >
ygrek установил(а) тему: Камль -- http://caml.inria.fr | Логи -- http://chatlogs.jabber.ru/ocaml@conference.jabber.ru/ | Верблюды грязи не боятся! | release crap | judge by commits, not comments | ocaml мёртв, move on
Конфигурация комнаты
Участники комнаты

GMT+3
[00:00:55] gds вышел(а) из комнаты
[00:10:44] <zert> с грехом пополам поставил qt для х-я
[00:10:57] <zert> ну и пишут — ад и израиль
[00:15:50] ermine вышел(а) из комнаты
[00:27:05] serp256 вышел(а) из комнаты
[00:56:56] komar вошёл(а) в комнату
[00:57:51] <komar> Тут, кстати, было предложение объединить ocaml@, haskell@ и erlang@.
[00:58:18] <zert> и что получится?
[00:58:28] <zert> и кто согласится?
[00:58:37] <komar> Не знаю.
[00:58:50] <zert> я тоже
[00:59:27] <zert> есть programming@, там полиглоты сидят
[01:00:30] <komar> Похапэ+джабоскрипт?
[01:06:35] <zert> да всё подряд
[01:06:53] <zert> трололо+трололо, в основном
[01:37:45] Kakadu вышел(а) из комнаты
[02:30:30] Typhon вышел(а) из комнаты
[02:55:18] zert вышел(а) из комнаты
[03:27:04] abiogenesis вошёл(а) в комнату
[03:43:20] arhibot вышел(а) из комнаты
[03:44:15] komar вышел(а) из комнаты
[03:44:17] abiogenesis вышел(а) из комнаты
[08:37:06] iNode вышел(а) из комнаты: Replaced by new connection
[08:37:06] iNode вошёл(а) в комнату
[08:55:41] f[x] вышел(а) из комнаты
[10:05:22] SerP вошёл(а) в комнату
[10:20:04] f[x] вошёл(а) в комнату
[10:25:53] gds вошёл(а) в комнату
[10:35:05] ermine вошёл(а) в комнату
[11:33:41] <f[x]> ermine: насчёт camlimages - обычно хорошо сначала коммитить оригинальную версию от которой форкаешь чтобы было проще изменения смотреть
[12:34:22] <f[x]> implicit values меня пугают
[12:34:29] f[x] ретроград?
[12:38:36] <gds> аштойта вообще?
[12:41:07] <f[x]> https://www.lexifi.com/blog/implicit-values
[12:45:40] <gds> это какой-то ональный ад, имхо.
[12:46:16] zert вошёл(а) в комнату
[12:49:59] <gds> ленивые помеченные значения с ловлей циклов: http://gds.livejournal.com/57458.html
[12:51:14] <f[x]> ну единственно что немножко успокаивает это проверка что только одно типоподходящее implicit value в scope присутствует
[12:51:57] <gds> это да.
[12:53:49] komar вошёл(а) в комнату
[14:30:33] <ermine> f[x]: не, просто надо ловить баги и фиксить, я под линуксом не тестила
[14:31:10] <ermine> надо поискать где тестить и видеть баги сборки
[14:32:09] <ermine> f[x]: у меня оригинальная сборка кстати не собирается там где камло собрано без поддержки иксов, моя сборка собирается
[14:55:04] <f[x]> ermine: ну одно другому никак не мешает
[14:55:18] <f[x]> у меня собралось если что
[14:57:32] <ermine> f[x]: я сишный код только в одном файле правила, поэтому в инитиальном коммите мало что интересного кроме оащиса
[14:58:24] <ermine> плюс еще пытаюсь из галля выжать чонить, но он не торопится в даркс пихать свой код :(
[14:59:41] <ermine> f[x]: а еще можешь прислать мне весь вывод сборки
[15:00:33] <f[x]> http://build.ygrek.org.ua/hudson/job/camlimages-git/
[15:01:03] <f[x]> а можно как-то configure сделать чтобы он собирал только то что нашлось, чтобы не disable'ить руками
[15:01:33] <f[x]> с другой стороны такое не всегда нужно, наверное хорошо бы отдельным флажком
[15:03:14] <ermine> чтобы автоматически дизаблить, надо повторить ряд функцоинала оазиса заново, поскольку он пересоздает setup.data после preconfcommand
[15:05:09] <f[x]> Build: flag(pkg_lablgtk2)
не?
[15:05:39] gds ждёт, пока рукоятки грабель оазиса обернут мягким материалом
[15:05:46] <ermine> а вот про это я написала в мейллист оазис-девела
[15:07:11] <ermine> f[x]: надо ждать 0.3.0, чтобы сработало, галл чота там бормочет про flag lablgtk; default: auto
[15:07:24] <f[x]> надо тоже подписаться что-ли
[15:07:34] <ermine> ага
[15:07:35] <f[x]> вообще да, он говорил что это будет автоматически работать
[15:08:11] <f[x]> gds: ну для простых проектов оно годится, camlimages точно не простой - куча зависиомстей плюс сишные биндинги
[15:08:12] <ermine> только я не пойму как юзер тогда сможет дизаблить
[15:08:35] <ermine> и не должно же быть, чтобы имя опции командной строки совпадало с именем отсутствующего паккаджа
[15:09:09] <f[x]> ermine: вот именно, поэтому нужен флаг типа automagic - либо детектить автоматически, либо чётко следовать тому что юзер сказал и фейлитьь если не удаётся удовлетворить
[15:10:54] <f[x]> потому что только тот либо только тот вариант - нехорошо
[15:11:57] <ermine> ну я собираюсь ща ответить галлю в мейллисте, что мне нужен флаг для сборки определенной части проекта, а флаги депендсов - это совсем другое
[15:14:59] <f[x]> о, саванну вернули
[15:16:37] <ermine> не понимаю интерфейса твоей ссылки на сборки
[15:16:43] <ermine> я там логов не вижу
[15:17:46] <f[x]> красненькие кружочки
[15:18:11] <f[x]> https://build.ygrek.org.ua/hudson/job/camlimages-git/label=master,ocaml=default/lastBuild/console
[15:18:17] <ermine> я в elinks смотрю
[15:25:41] <ermine> f[x]: вот там я понавставила failwith "Please specify --disable-XXX" потому что не нашла пока легкого воркароунда
[15:25:52] <ermine> f[x]: а сам лог -build есть?
[15:26:01] <ermine> посмотреть на ипликты
[15:26:56] <f[x]> так то билда и не дошло раз configure зафейлил
[15:27:50] <ermine> решение в лоб - автоматически перезапустить конфигурялку с добавленным --disable, ггг
[15:28:57] <ermine> интересно, как на скорую руку такое слабать
[15:29:13] <f[x]> не хочу это настривать для каждого хоста отдельно, подожду пока ты пофиксишь
[15:29:18] <ermine> f[x]: а вообще не верится, что гифа у тебя нет
[15:29:47] <f[x]> ну это минимальные билдеры
[15:30:35] <ermine> f[x]: да, стоило бы добавить проверку наличия смого pkg-config
[15:30:48] <ermine> не очень-то минимально у тебя там :)
[15:31:05] <f[x]> ну я ж всё таки хочу чтобы там хоть что-то собиралось :)
[15:32:08] <ermine> надо подумать как перезапускать конфигурялку...
[15:33:26] <ermine> f[x]: спасибо за тест
[15:33:34] <f[x]> не, лучше пушни свой код в оазис и быстрей получить нормальную поддержку в oasis'е
[15:33:53] <f[x]> ну этот тест теперь будет постоянно пересобирать из твоего git'а
[15:34:07] <f[x]> могу настроить email куда-нибудь по failed билдам
[15:34:24] <f[x]> кстати у тебя случаем нету лишней bsd машинки с джавой? :)
[15:34:41] <ermine> f[x]: я лучше пойду спаммить в мейллист оазиса
[15:34:54] <f[x]> http://build.ygrek.org.ua/hudson/job/camlimages-git/label=master,ocaml=default/3/console
[15:35:13] <f[x]> поставил все нужные зависимости на один хост
[15:36:36] <ermine> f[x]: кста, а у вас в линуксе rgb.txt куда ставится?
[15:36:57] <ermine> ../lib/X11/rgb.txt скорее всего
[15:37:15] <ermine> с каким-то префиксом /usr или /var
[15:37:59] <f[x]> /usr/share/X11/rgb.txt: symbolic link to `/etc/X11/rgb.txt'
[15:38:35] <ermine> пасиб
[15:39:52] <ermine> а вот странно что эта сборка обломилась так поздно
[15:40:43] <ermine> хотя не, камлофинд же не обрамался
[15:43:00] <f[x]> это потому что ocaml без X'ов
[15:43:46] <ermine> f[x]: ну по идее камлофинд должен не найти паккадж graphics
[15:44:47] <ermine> проверила на своем сервере где тоже нет иксов - да, камлофинд не обламывается
[15:44:58] <ermine> бага на баге
[15:45:22] <f[x]> потому что META сбандлены с камлофиндом
[15:46:23] <ermine> ну против такого лома у меня нет кочерги
[15:46:37] <f[x]> теперь собралось - http://build.ygrek.org.ua/hudson/job/camlimages-git/label=master,ocaml=default/4/console
[15:46:38] <ermine> а что делать?
[15:46:57] <f[x]> даловаться в соответствующие инстанции
[15:48:40] <ermine> а вот если для executable убрать best, то сборка бы наверняка обломалась бы
[15:48:56] <ermine> f[x]: собери ocamlbuild test/test.byte плиз
[15:52:24] <f[x]> не соберётся скорее всего из-за стаблиб
[15:53:40] <ermine> я вроде бы владела умением обходить эту проблему, но умение прочно забыто. Не хочется ставить -custom
[15:54:32] <f[x]> либо указывать dllpath при сборке либо запускать с правильным CAML_LD_LIBRARY_PATH
[15:55:25] <ermine> эта переменная откуда?
[15:55:48] <f[x]> камль
[15:55:59] <ermine> а с камлевым ld.conf тоже кажись не очень-то прокатывало
[15:59:41] <f[x]> зарепортил багу про graphics в debian
[16:03:44] <ermine> это самая нижняя инстанция
[16:03:46] <ermine> хех
[16:03:54] <ermine> надо герду репортить
[16:06:50] <f[x]> пускай сами Герду репортят :)
[16:15:54] <ermine> nice, аффтар lwt принял мой фичареквест насчет tls в lwt-ssl
[16:17:46] <ermine> можно будет выкинуть свой биндинг к tls
[16:21:49] <ermine> хотя конечно жаль, что он подправлять сам ocaml-ssl не будет
[16:25:07] zert вышел(а) из комнаты
[16:40:08] zert вошёл(а) в комнату
[17:00:27] iNode вышел(а) из комнаты
[17:17:09] iNode вошёл(а) в комнату
[17:33:28] gds вышел(а) из комнаты
[18:01:27] ftrvxmtrx вошёл(а) в комнату
[18:02:26] <zert> кто тут желал объединённую конфу из erlang@ haskell@ ocaml@? заходите в programming@, там сейчас нечто подобное
[18:04:41] <f[x]> в одну конфу с нетипизированным ырланком? извините!
[18:12:25] gds вошёл(а) в комнату
[18:16:42] Kakadu вошёл(а) в комнату
[18:18:36] <ermine> f[x]: динамически типизированным :)
[18:19:27] <komar> f[x]: кто нетипизированный ты нетипизированный епт
[18:19:40] <f[x]> типа мне не всё равно - сегфолт или Unexpected_type_error_exception
[18:19:40] <ermine> f[x]: ты уже подписался на oasis-devel?
[18:20:30] <ermine> а в камле зато есть Obj
[18:20:38] <ermine> там можно мухлевать вовсю
[18:24:00] <ermine> f[x]: почитай последнее письмо галля
[18:24:22] <f[x]> угу, позже
[18:24:23] <ermine> интересно куда это он предлагает сабмитить фичреквесты, этакая скотина французская :)
[18:24:47] <gds> f[x]: окамл теперь тоже имеет http://bitbucket.org/gds/ocaml-dynatvar/src/tip/dynvar.mli !  Я его испортил!!11111
[18:25:49] <ermine> ага
[18:35:34] <Kakadu> меня камло так испортило, что я не могу с ходу придумать случай когда динамическая типизация нужна
[18:36:35] <ermine> Kakadu: надо писать такой проект, в котором сотня файликов .ml
[18:37:01] <ermine> и при этом надо иметь в виду расширяемость
[18:37:50] <ermine> Kakadu: ты кстати биндинг к qt осилил?
[18:39:05] <f[x]> похоже после squeeze'а в debian будет куча новых камлопакетов
[18:40:14] <f[x]> oasis, extunix, camltemplate, cppo, camlmix, tophide, xstrp4, ...
[18:40:14] <ermine> если галл осилит сегодняшнее собственное письмо, то еще больше камлопаетов будет, собранных на разный лад
[18:41:09] <ermine> cppo?
[18:42:23] <gds> Kakadu: динамическая типизация -- например, вот, пишу парсер, который должен работать с любыми типами терминалов/нетерминалов.  Так как мозгов мало, чтобы изобразить правильную статическую типизацию (хотя это и реально.  наверное.), а делать препроцессор вместо библиотеки меня не устраивает, то беру динамическую типизацию.
[18:42:36] <f[x]> простой препроцессор
[18:43:19] <f[x]> gds: btw ocamlyacc считай тоже динамически типизированный унутре - всюду obj понатыкано (из-за этого и сегфолтит наверное)
[18:44:23] <gds> да!  про yacc это факт.  я же сначала посмотрел, как это так -- у меня не получается, а у них получается.
А сегфолтит почему/как?  Не встречал про это ничего, ни на практике, ни в слухах.
[18:45:12] f[x] proudly presents PR#5109
[18:46:11] <Kakadu> ermine: нет, я впал в полный развал и не могу себя заставить что-либо делать.
[18:46:46] <ermine> ocsigen тоже вовсю obj юзает, неужто будет сегфолтить на продакшне?
[18:46:54] <Kakadu> gds: про препроцессор смутно понятно
[18:47:51] <f[x]> ermine: ну можно все употребления coq'ом доказать на корректность :)
[18:49:53] <gds> f[x]: вот ты отжог насчёт ловли ошибки.  Сколько суток убил?
[18:52:03] <f[x]> ой сколько, тупо механическая работа, один вечер
[18:53:57] <gds> второй вопрос -- про мотивацию :)
[18:54:23] <f[x]> чсв?
[18:55:24] <gds> понял.  Это хорошо.  Думал, просто, тебе для чего-то фрама нужна, либо тоже падал ocamlyacc.
[18:56:47] <gds> Kakadu: ну вот, есть у меня в исходнике (не на окамле!) что-то типа:
nonterm1 : string = nonterm2 nonterm2 := sprintf "%i %i" $1 $2
nonterm2 : int = terminal_int
это позволит мне как сгенерировать парсер, так и расставить типы (исходник -- на окамле):
let rec nonterm1 lexbuf : string = let _val1 = parse nonterm2 lexbuf in let _val2 = parse nonterm2 lexbuf in sprintf "%i %i" _val1 _val2
and nonterm2 lexbuf : int = match (get_next_token lexbuf) with [ Int i -> i | _ -> failwith "expected Int" ]
тут " : string" и " : int" можно спокойно брать из описания парсера, и компилятор проверит типы.  (можно и _val1 тоже при желании ограничить по типу, пофиг.)
[18:58:04] <gds> так вот, я очень не хочу впутывать препроцессор, окамловский компилятор, а то и ассемблер/линкер, в процесс компиляции исходника на языке, в котором можно менять синтаксис на лету (т.е. контекстно-зависимая грамматика).
[18:58:42] <gds> впутывать не хочу как с точки зрения производительности (с меньшей стороны), так и с точки зрения необходимости наличия этих инструментов на хосте.
[19:02:13] <Kakadu> gds: я ничего не понял причем тут динамическая типизация
[19:43:50] <gds> Kakadu: при том, что без препроцессора очень сложно типизировать парсер.
[19:45:47] SerP вышел(а) из комнаты
[19:47:57] <ermine> gds: читал книжку по парсингу (практическое руководство которое)?
[19:54:13] <gds> ermine: конечно нет, я ж быдло.  А книжка поможет протипизировать?
[19:57:13] <ermine> gds: ну наверное, я иерархию хомского поняла только благодаря этой книжке, хотя далеко еще не уехала от первых глав
[19:57:57] <ermine> а хомский стати вроде все еще жив
[20:01:56] <gds> про хомского -- читал, кстати недавно весьма, но ничего толкового мне это знание не дало, и через пару месяцев мусорщик его соберёт.
А вот протипизировать -- эта книжка наверное не поможет.
[20:11:35] <ermine> gds: ты файло принял-то?
[20:30:14] ftrvxmtrx вышел(а) из комнаты
[20:37:46] komar вышел(а) из комнаты
[20:42:45] serp256 вошёл(а) в комнату
[20:43:32] serp256 вышел(а) из комнаты
[21:17:17] Typhon вошёл(а) в комнату
[21:25:29] komar вошёл(а) в комнату
[21:53:37] ftrvxmtrx вошёл(а) в комнату
[21:54:25] serp256 вошёл(а) в комнату
[22:37:11] ermine пописала в мейллист оазиса
[22:52:04] <ermine> какой же с(т)ранный сайт у ocamlcore.org
[22:57:17] <ermine> а там использование pkg-config заказано еще в феврале
[22:57:27] <ermine> а конь рядом и не сваливался?
[23:02:57] gds вышел(а) из комнаты
[23:11:51] arhibot вошёл(а) в комнату
[23:50:43] <ermine> интересно, с какой политикой юзать CFLAGS и LIBS
[23:51:04] <ermine> f[x]: втыкать в обязательном порядке везде?
[23:51:59] <ermine> пока отложу этот вопрос
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!