Home
Objective Caml
ocaml@conference.jabber.ru
Пятница, 8 января 2010< ^ >
f[x] установил(а) тему: Камль -- http://caml.inria.fr | Логи -- http://chatlogs.jabber.ru/ocaml@conference.jabber.ru/ | Верблюды грязи не боятся! | release crap | voice по запросу | ocaml мёртв, move on
Конфигурация комнаты

GMT+3
[00:23:00] SV0L0CH вошёл(а) в комнату
[01:08:38] ExplicitCall вошёл(а) в комнату
[01:09:08] ExplicitCall вышел(а) из комнаты
[01:20:26] Typhon вошёл(а) в комнату
[01:51:18] Kakadu вышел(а) из комнаты
[02:30:17] ygrek вышел(а) из комнаты
[02:44:46] ermine вышел(а) из комнаты
[03:28:04] Typhon вышел(а) из комнаты
[06:03:02] SV0L0CH вышел(а) из комнаты
[06:31:25] ExplicitCall вошёл(а) в комнату
[06:31:55] ExplicitCall вышел(а) из комнаты
[07:50:09] ExplicitCall вошёл(а) в комнату
[07:50:19] ExplicitCall вышел(а) из комнаты
[10:18:23] Typhon вошёл(а) в комнату
[11:10:41] ygrek вошёл(а) в комнату
[11:31:57] Kakadu вошёл(а) в комнату
[11:32:47] Kakadu вышел(а) из комнаты
[12:22:31] ermine вошёл(а) в комнату
[12:26:49] michael.holub вошёл(а) в комнату
[12:44:33] iNode вышел(а) из комнаты
[12:45:13] <ygrek> попробуй руками запустить flexlink с tcl*.lib
[12:57:27] <ermine> насчет clutter - придется освоить метод включения его в lablgtk и инаследовать от его классов
[12:58:05] <ermine> а я-то надеялась без gtk его использовать
[12:58:33] <sceptic> почему?
[12:58:58] <ermine> у клуттера нет собственных обработчиков сигналов
[12:59:05] <ermine> они через glib идут
[12:59:13] <ermine> в lablgtk это хорошо сделано
[13:00:53] <ermine> если в glib в обработчике сигналов функции-калбэки типизируются в рантайме, то это просто так на камле не сделаешь, и в lablgtk сигналы сделаны в виде явных методов типа onclick
[13:01:54] <ermine> в хаскильном gtk тоже явно разрисованные сигналы, вот там понравилась идея классов типов
[13:07:03] iNode вошёл(а) в комнату
[13:14:31] abiogenesis вошёл(а) в комнату
[13:23:06] abiogenesis вышел(а) из комнаты
[13:32:31] gds вышел(а) из комнаты: Replaced by new connection
[13:32:32] gds вошёл(а) в комнату
[13:35:56] michael.holub вышел(а) из комнаты
[13:53:08] Typhon вышел(а) из комнаты
[14:03:53] gds вышел(а) из комнаты
[14:15:53] michael.holub вошёл(а) в комнату
[14:21:27] michael.holub вышел(а) из комнаты
[14:27:53] Kakadu вошёл(а) в комнату
[15:01:05] AKos вошёл(а) в комнату
[15:39:14] Kakadu вышел(а) из комнаты
[16:30:03] Typhon вошёл(а) в комнату
[16:57:53] ygrek вроде как разобрался в причине косяка '<' в deriving и склепал исправление, требуются опытные кролики для тестирования
[16:59:33] iNode вышел(а) из комнаты
[17:03:49] iNode вошёл(а) в комнату
[17:14:46] <Typhon> http://www.mlstate.com/ смотрел кто-нибудь?
[17:31:05] iNode вышел(а) из комнаты
[17:44:32] ExplicitCall вошёл(а) в комнату
[17:47:45] ExplicitCall вышел(а) из комнаты
[18:00:13] ExplicitCall вошёл(а) в комнату
[18:00:29] ExplicitCall вышел(а) из комнаты
[19:06:16] Typhon вышел(а) из комнаты
[19:40:44] ExplicitCall вошёл(а) в комнату
[19:49:00] ExplicitCall вышел(а) из комнаты
[19:49:16] ExplicitCall вошёл(а) в комнату
[20:00:24] michael.holub вошёл(а) в комнату
[20:41:28] AKos вышел(а) из комнаты: Replaced by new connection
[20:41:37] AKos вошёл(а) в комнату
[21:48:12] <ygrek> аргх, мой фикс для '<' конфликтует с pa_do
[21:48:28] <ygrek> Typhon: OPA смотрел, не проникся
[21:50:46] ExplicitCall вышел(а) из комнаты
[21:55:35] michael.holub вышел(а) из комнаты
[22:24:20] Typhon вошёл(а) в комнату
[22:25:16] <Typhon> ygrek, почему? есть причины какие-то или просто эстетически не нравится? :)
[22:27:26] AKos вышел(а) из комнаты
[22:27:49] AKos вошёл(а) в комнату
[22:28:17] AKos вышел(а) из комнаты
[22:28:34] AKos вошёл(а) в комнату
[22:30:48] <ermine> а у кого есть светлое понимание того, как юзать caml_enter_blocking_section/caml_leave_blocking_section?
[22:31:50] <ygrek> у них сайт без жабаскрипта не работает
[22:32:11] <ygrek> ну и вообще silver bullet обещают - не верю
[22:32:51] <ygrek> ermine: у меня есть некое представление, выкладывай траблу
[22:35:50] <ermine> да я пытаюсь отдебажить свой биндинг к TLS, видимо после переезда с 32 битов на 64 битную машину оно совсем перестало работать, в одном месте падало в сегфолт даже, его пофиксила, теперь думаю где копать дальше
[22:36:33] <ermine> в коде у меня насовано блокировок там где критические вызовы функций openssl, я верила что это защищает работу в тредах
[22:43:31] <ygrek> blocking_section не делают код менее бажным
[22:44:40] <ygrek> правило номер один - внутри blocking_section нельзя ни под каким соусом трогать камловский хип
[22:45:16] <ygrek> т.е. грубо говоря все входящие строки - копировать, под все возвращаемые строки - malloc'ать буфер
[22:47:08] <ermine> ага, я вижу в коде, что из инпутов все вынимается до входа в блок
[22:48:08] <ygrek> mltls_error у меня вызывает подозрение
[22:49:17] <ygrek> copy_string может вызвать перемещение res -> res не зареган -> крэш
[22:49:20] <ermine> у меня tests/start_machine не грузит сертификат
[22:49:35] <ermine> а в ерроре была ошибка, которая валила в сегфолт
[22:49:59] <ermine> я в одном месте вставила Unsigned_long_val там где положено
[22:50:31] <ygrek> мы про тот mltls что на github говорим? тогда пушни коммиты, чтобы старый код не смотреть
[22:51:16] <ermine> да, я его как раз пытаюсь привести в божеский вид и наконец приделать к сульце по-божески
[22:52:37] <ermine> тот сегфолт был в ERR_error_string_n
[22:53:18] <ermine> кста, сегфолт происходил только в байткоде, что наводит на мысль, что байткод сам по себе хороший дебаггер
[22:54:37] ermine ищет багу в ssl_ctx_use_certificate_file
[22:54:38] <ygrek> по разному бывает
[22:55:42] <ermine> пока я дальше сертификата на новой машине не продвинулась
[22:55:52] <ermine> я не понимаю, как оно раньше работало вообще :)
[22:56:38] ermine в ходе чтения кода редактирует его, выкидывая лишние сущности и блокировки
[22:57:43] <ermine> вообще знатный код
[22:57:52] <ermine> даже стыдно
[23:00:09] <ygrek> а какая ошибка в ERR_error_string_n ? там всё ок по-моему
[23:01:19] <ermine> ygrek: оно должно принимать на вход unsigned long, до этого был просто long
[23:01:49] <ermine> и в gdb была функция caml_int32_format
[23:02:55] <ygrek> и чё?
[23:03:55] <ermine> ygrek: нынешний вид:
CAMLprim value camltls_ERR_get_error(value unit) {
return caml_copy_int32(ERR_get_error());
}
CAMLprim value camltls_ERR_error_string_n(value ve) {
char buf[1024];
ERR_error_string_n(Unsigned_long_val(ve), buf, sizeof(buf));
return copy_string(buf);
}
[23:04:12] <ermine> ygrek: казалось бы, разницы мало, а падать в сегфолт перестало
[23:05:43] <ermine> но при этом оно печатает нечеловеческие строки ошибок, не проливающие свет на природу неработы
[23:06:18] <ygrek> бнопня какая-то, что long что unsigned - всё одно
[23:09:24] <ermine> хм
[23:09:28] <ermine> а хез
[23:09:39] <ermine> я щас попыталась воспроизвести, не воспроизводится :))
[23:10:04] <ygrek> :)
[23:11:09] <ygrek> баги в сишном коде + gc + потоки -> персистентная недетерминированная головная боль
[23:16:27] <ermine> надо учиться
[23:20:48] <ermine> а потоки имхо тут ни при чем
[23:21:00] <ermine> вот gc и треды - это да
[23:21:13] <ermine> потоки - это просто копирование строк
[23:23:16] <ygrek> треды = потоки
[23:23:23] <ygrek> а то что ты говоришь - это стримы
[23:23:24] <ygrek> :)
[23:23:59] <ermine> я вспомнила, что ты имел в виду про mltls_error
[23:24:22] <ermine> там тоже была знатная опечатка
[23:25:45] <ermine> но оно и так экспшны не выкидывает
[23:36:53] AKos вышел(а) из комнаты
[23:57:38] iNode вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!