Home
Objective Caml
ocaml@conference.jabber.ru
Вторник, 2 июля 2013< ^ >
f[x] установил(а) тему: OCaml / ОКэмл / Камль -- http://ocaml.org/ | Камло - http://camlunity.ru/ | Верблюды грязи не боятся! | release crap, enjoy NIH | репортьте баги официальным дилерам | ocaml мёртв и тормозит, move on | stdlib only? - ССЗБ | Fight FUD with fire | Мойте руки перед чатом | KEEP CAML AND CURRY ON | F#, Coq - де-факто онтопик
Конфигурация комнаты
Участники комнаты

GMT+4
[00:00:48] <bobry> https://github.com/ocaml/ocaml/commit/ace0205b6499ffdae4588cfdd640c45855217a8f
[00:00:51] <bobry> офигеть, неужели
[00:01:05] <bobry> @@ для apply правда страшновато как-то
[00:11:01] bobry вышел(а) из комнаты
[00:19:49] Kakadu вышел(а) из комнаты
[00:32:50] Kakadu вошёл(а) в комнату
[00:51:24] Typhon вошёл(а) в комнату
[01:17:10] Kakadu вышел(а) из комнаты
[01:47:52] ermine вышел(а) из комнаты
[03:06:55] tilarids вышел(а) из комнаты: Machine going to sleep
[03:08:26] Typhon вышел(а) из комнаты
[03:08:38] Typhon вошёл(а) в комнату
[04:06:42] f[x] вошёл(а) в комнату
[04:19:45] f[x] вышел(а) из комнаты
[04:51:36] f[x] вошёл(а) в комнату
[05:54:41] f[x] вышел(а) из комнаты
[05:54:48] f[x] вошёл(а) в комнату
[09:50:36] f[x] вышел(а) из комнаты
[10:22:36] zinid вошёл(а) в комнату
[10:42:24] ermine вошёл(а) в комнату
[11:24:08] tilarids вошёл(а) в комнату
[12:21:56] tilarids вышел(а) из комнаты: Replaced by new connection
[12:21:57] tilarids вошёл(а) в комнату
[12:32:52] avkarpich вошёл(а) в комнату
[12:56:45] Kakadu вошёл(а) в комнату
[13:12:31] tilarids вышел(а) из комнаты: Machine going to sleep
[13:14:59] f[x] вошёл(а) в комнату
[13:30:10] <ADEpt> gds: memory-profiling ocaml compiler https://github.com/cago/ocaml
[13:32:57] <gds> ADEpt: а это ничо, что уменьшили wosize?
[13:33:00] gds afk 2..3h
[13:34:06] <ADEpt> gds: ну, с этим же в продакшене не жить
[13:41:35] tilarids вошёл(а) в комнату
[13:47:49] Typhon вышел(а) из комнаты
[14:06:13] avkarpich вышел(а) из комнаты
[15:12:35] Typhon вошёл(а) в комнату
[15:39:24] f[x] вышел(а) из комнаты
[15:48:57] <gds> ADEpt: а почему не жить?  По-моему, как раз для продакшона.  Как увидел, что память жрётся -- sighup послал, дамп изучил, радуешься.  А если только в тестовом окружении, то придётся эмулировать всё, что с программой творили (особенно геморно это для сетевых серверов).
[15:57:31] Kakadu вышел(а) из комнаты
[17:40:13] f[x] вошёл(а) в комнату
[17:44:26] Typhon вышел(а) из комнаты
[17:44:52] Typhon вошёл(а) в комнату
[17:49:17] ermine пчу-то считала что операторы <> и != в камле являются синонимами и долго искала багу
[17:49:37] Kakadu вошёл(а) в комнату
[17:55:11] <aleksey> всегда юзай <> если не уверена
[17:59:31] <komar> Ага, особенно для абстрактных типов.
[17:59:45] <f[x]> если сомневаешься - юзай тайпклассы
[18:02:02] <gds> если сомневаешься -- сомневайся
[18:04:21] <gds> а если сомневаешься, что кто-то сомневается и использует = <> на твоих данных -- добавь к ним тривиальную fun () -> () (не помню только, в начало или в конец блока), и пусть теперь будет его очередь сомневаться второй раз.
[18:14:07] <aleksey> вот кстати почему в coq тайпклассы сделали, а в камле нет?
[18:14:50] <aleksey> или считают что они не нужны при наличии первоклассных модулей?
[18:16:47] <gds> потому что в coq они полезны для матана (я ещё удивлён, почему они не ограничены чисто Prop), на скорость влияют мало (производительность от coq-кода не нужна), на корректность тоже (ведь там обычно пруфы, и, если подставится не то, просто не получится доказать; сравни с рантайм-ошибкой в случае окамла+тайпклассов), а в окамле нужна предельная явность вещей, которые обычно делаются тайпклассами, ибо скорасть!111
[18:17:45] <aleksey> а что за рантайм ошибки с тайпклассами?
[18:18:13] <gds> не тот инстанс выбрался -- и ищи, почему криво сравниваются значения, как в случае ermine.
[18:19:40] <aleksey> там может быть неопределённость?
[18:19:48] <gds> в coq -- точно.
[18:20:11] <gds> по слухам, и в окамле будут тайпклассы, но по-французски, в виде "резолвим поле записи по её типу".
[18:20:35] <aleksey> мнэ
[18:20:37] <aleksey> например?
[18:22:18] <gds> module A = struct type r = { x : int } end
module B = struct type r = { x : bool } end
open A
open B
let r1 = { x = 1 }
let r2 = { x = true }
обещают, что r1 и r2 будут иметь разный тип -- A.r и B.r соответственно.
ну, я это давно читал, плохо помню детали, могу гнать.
[18:22:25] <gds> где читал -- не помню, разумеется.
[18:49:36] <f[x]> gds: а при чём тут тайпклассы?
[18:49:46] <f[x]> по-моему это уже в транке запилили
[18:55:59] f[x] вышел(а) из комнаты
[19:00:02] <gds> f[x]: а вообще да, если речь про просто создание записи через { f = v ; .. }, то фокус не получится.  Если же в том числе есть подобный "резолвинг" типа при обращении к полю записи или при копировании записи, то можно что-то попробовать.  Не в курсе, там оно есть?
[19:21:09] <aleksey> я это тоже где-то читал
[19:21:16] <aleksey> но этому до тайпклассов далековато
[19:21:26] komar вышел(а) из комнаты: Replaced by new connection
[19:21:31] komar вошёл(а) в комнату
[19:36:32] <komar> http://www.reddit.com/r/ocaml/
[19:36:36] <komar> Охуеть теперь.
[20:01:44] <zinid> http://gallium.inria.fr/blog/making-it-easier-for-beginners-to-learn-ocaml/ зачотная статья
[20:04:17] <zinid> о, новая книга по камлу
[20:04:31] <zinid> OCaml from the Very Beginning
[20:30:25] <Kakadu> йек
[20:30:33] <Kakadu> ой,  промазал
[21:20:43] tilarids вышел(а) из комнаты: Machine going to sleep
[21:21:15] Kakadu вышел(а) из комнаты
[21:25:42] <ermine> камло только для начинающих
[21:47:29] <zinid> http://kuku.jabber.ru/~xram/mlbook.pdf
[21:47:30] <zinid> enjoy!
[21:51:41] ftrvxmtrx вышел(а) из комнаты
[22:10:34] Typhon вышел(а) из комнаты
[22:35:15] zinid вышел(а) из комнаты
[22:35:29] Zbroyar вошёл(а) в комнату
[22:38:35] <Zbroyar> Привет.
[22:38:58] <Zbroyar> Я так понимаю, что пару дней назад тут говорили про профайлинг, но я опоздал к началу беседы.
[22:39:03] <Zbroyar> Собственно, вопрос:
[22:39:32] <Zbroyar> что нужно, чтобы отtimeprofile'ить программу на окамле
[22:39:34] <Zbroyar> ?
[22:39:47] <Zbroyar> Доки утверждают, что достаточно добавить ключ -p
[22:39:58] <aleksey> ага
[22:40:06] <Zbroyar> к компиляции и линковке, а потом просто запустить gprof
[22:40:09] <Zbroyar> Так вот нифига
[22:40:24] <aleksey> запускаешь программу, после нормального останова gprof
[22:40:27] <Zbroyar> У меня не создается gmon.out
[22:41:11] <Zbroyar> от чего я в некотором недоумении
[22:41:59] <Zbroyar> Причем я припоминаю, что когда-то я уже решал эту проблему и тогда все было тоже не безоблачно.
[22:48:53] Typhon вошёл(а) в комнату
[22:53:28] Kakadu вошёл(а) в комнату
[22:53:29] Typhon вышел(а) из комнаты
[23:09:56] Zbroyar вышел(а) из комнаты
[23:10:54] Zbroyar вошёл(а) в комнату
[23:44:25] tilarids вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!