Home
Objective Caml
ocaml@conference.jabber.ru
Пятница, 28 июня 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:11:41] bobry вошёл(а) в комнату
[00:12:58] bobry вошёл(а) в комнату
[00:13:02] bobry вышел(а) из комнаты
[00:13:10] bobry вышел(а) из комнаты
[00:22:22] Typhon вышел(а) из комнаты
[00:22:33] Typhon вошёл(а) в комнату
[00:24:27] Typhon вышел(а) из комнаты
[00:54:12] ermine вышел(а) из комнаты
[01:09:20] Kakadu вышел(а) из комнаты
[01:14:12] Typhon вошёл(а) в комнату
[01:22:06] Typhon вышел(а) из комнаты: Replaced by new connection
[01:22:16] Typhon вошёл(а) в комнату
[01:24:24] Typhon вышел(а) из комнаты
[01:24:50] Typhon вошёл(а) в комнату
[01:25:56] Typhon вышел(а) из комнаты: Replaced by new connection
[01:26:05] Typhon вошёл(а) в комнату
[04:12:50] letrec вошёл(а) в комнату
[05:17:34] letrec вышел(а) из комнаты
[07:40:11] avkarpich вошёл(а) в комнату
[08:19:47] komar вышел(а) из комнаты: Replaced by new connection
[08:19:47] komar вошёл(а) в комнату
[09:39:02] f[x] вошёл(а) в комнату
[09:52:46] ermine вошёл(а) в комнату
[10:20:06] f[x] вышел(а) из комнаты
[10:48:02] zinid вошёл(а) в комнату
[10:52:40] ftrvxmtrx вышел(а) из комнаты
[11:01:19] f[x] вошёл(а) в комнату
[11:05:50] Typhon вышел(а) из комнаты
[11:40:47] ftrvxmtrx вошёл(а) в комнату
[12:10:31] Typhon вошёл(а) в комнату
[12:46:56] Kakadu вошёл(а) в комнату
[13:15:33] f[x] вышел(а) из комнаты
[14:46:45] Zbroyar вошёл(а) в комнату
[15:10:34] bobry вошёл(а) в комнату
[15:10:37] <bobry> har-har
[15:10:43] <bobry> http://blogs.msdn.com/b/fsharpteam/archive/2013/06/27/announcing-a-pre-release-of-f-3-1-and-the-visual-f-tools-in-visual-studio-2013.aspx
[15:10:48] <bobry> "Extensions to array slicing"
[15:12:58] <gds> они читают камлочятик1111
[15:14:05] avkarpich вышел(а) из комнаты
[15:47:47] <Kakadu> Есть телепаты, которые скажут что у меня тормозит?) http://paste.in.ua/8411/
[15:51:11] <Kakadu> Я пытаюсь понять почему якк так лучше комбинаторов
[15:54:45] <bobry> polymorphic compare?
[15:58:59] <ADEpt> "compare_val is also fairly slow. The OCaml compiler will optimize away calls to compare_val where it can, but it can't do it in all cases. It's a big enough issue that when I think of things to do to optimize an OCaml program, one of the first things on the list is to stamp out unnecessary invocations of compare_val"
[15:59:07] <ADEpt> https://ocaml.janestreet.com/?q=node/33
[16:02:23] <aleksey> ещё Hashtbl часто быстрее Map
[16:02:33] <bobry> also, у JS очень милые performance notes на GitHub'e http://janestreet.github.io/ocaml-perf-notes.html
[16:03:45] <Kakadu> Вроде бы я нарочито не писал такого много
[16:04:01] <Kakadu> "невиноватая я. Он сам пришел" (с)
[16:04:08] <bobry> Kakadu: ну так из Map и пришел :)
[16:04:16] <bobry> у тебя там вон Map.add
[16:04:22] <bobry> он же ищет куда вставить значение
[16:04:44] <aleksey> и вообще комбинаторами якк не обогнать
[16:06:19] <Kakadu> aleksey: ну не в 100 же раз отставать
[16:07:55] <aleksey> я не знаю как именно реализовано, но банальные комбинаторы в худшем случае тратят экспоненциальное время на разбор
[16:08:20] <Kakadu> ты про бэктрэкинг?
[16:08:23] <aleksey> ну да
[16:08:34] <Kakadu> мемоизация не решит проблему?
[16:08:58] <aleksey> решит, но всё равно не лениейное время будет
[16:09:10] <aleksey> линейное*
[16:09:23] <Kakadu> так линейное или нет?
[16:09:39] <Kakadu> аа, понял где опечатка
[16:10:49] <Kakadu> Я так понимаю для меня критичны первые строчки где процентики ненудевые
[16:10:53] <Kakadu> ненулевые*
[16:21:01] bobry вошёл(а) в комнату
[16:23:14] <aleksey> bobry: там написано, что
match x, y with
0, 0 -> ..
_, _ -> ...
causes a tuple allocation that is avoidable.
[16:23:15] bobry вышел(а) из комнаты
[16:23:23] <aleksey> а оно не вызывает насколько я помню
[16:23:51] <aleksey> в смысле не аллоцирует
[16:24:26] <aleksey> ADEpt: надо исправить!
[16:24:54] <bobry> aleksey: proof?
[16:25:03] <aleksey> ща
[16:25:09] <bobry> нафига там тупл аллоцировать, если нет as?
[16:25:27] <ADEpt> aleksey: это могло быть написано во времена 3.11
[16:25:30] <ADEpt> 3.10
[16:25:31] <aleksey> let asd x y =
  match x, y with
    | 0, 0 -> 1
    | _, _ -> 2
camlAsd__asd_1030:
.L101:
        cmpq    $1, %rax
        jne     .L100
        cmpq    $1, %rbx
        jne     .L100
        movq    $3, %rax
        ret
        .align  4
.L100:
        movq    $5, %rax
        ret
[16:25:54] <aleksey> ну мне казалось оно так всегда работало :)
[16:26:28] <aleksey> я по крайней мере не помню чтоб было по-другому
[16:28:09] <ADEpt> aleksey: зафигачь issue на гитхабе :)
[16:29:30] <aleksey> многовато телодвижений для такого :)
[16:30:23] <ADEpt> aleksey: я нашел уже его, ща пофиксим. Спасибо :)
[16:30:56] <aleksey> пожалуйста :)
[16:41:27] <gds> вообще, чо за бардак?  Почему я http://janestreet.github.io/ocaml-perf-notes.html не видел раньше?  Никаких анонсов не было, точно.
[16:42:31] <aleksey> я тоже не видел!
[16:43:17] <ADEpt> его только в марте написали :)
[16:52:26] <gds> и целых три месяца сообщество было в неведении?!
[17:10:33] <Kakadu> едем дальше. Что значит эта строчка http://paste.in.ua/8413/#9 если функция compare в Msg не объявлена явно руками?
[17:12:59] <bobry> Kakadu: а printf тебя не смутил? :)
[17:15:04] <Kakadu> Он меньше
[17:16:12] <aleksey> а сделай сначала тест побольше, чтоб в self seconds были на порядок больше числа
[17:16:31] <bobry> гм, неужели камло генерит специализированные версии compare для типов?
[17:16:35] <bobry> *пользовательских типов
[17:16:38] f[x] вошёл(а) в комнату
[17:17:19] <Kakadu> aleksey: которого числа?
[17:18:09] <bobry> Kakadu: всех чисел, размер входа побольше сделай
[17:22:40] <f[x]> хм, и Named union fields
[17:22:55] <Kakadu> сделал больше размер входа, но self seconds не растет
[17:23:04] <f[x]> в мантисе обсуждают аналог для камля давненько уже
[17:23:09] <Kakadu> http://paste.in.ua/8414/
[17:23:34] <gds> f[x]: где обсуждают?
[17:26:35] <f[x]> http://caml.inria.fr/mantis/view.php?id=5667
[17:26:37] letrec вошёл(а) в комнату
[17:46:31] bobry вышел(а) из комнаты
[17:53:19] bobry вошёл(а) в комнату
[17:54:18] bobry вышел(а) из комнаты
[18:08:00] <Kakadu> Жесть, Я выкинул pure functional мапу, сделал SortedList и оно ускорилось
[18:08:13] <ADEpt> aleksey: ты столкнул снежный ком :) Это документ конкретно перелопатят
[18:14:06] <gds> ADEpt: если будешь в курсе, сможешь сообщить в чат после окончания перелопачивания?
[18:14:19] <ADEpt> gds: да, смогу
[18:28:19] <f[x]> вообще мог бы просто форвардить сюда внутреннюю рассылку и делов
[18:32:06] <ADEpt> хехе
[18:32:42] bobry вошёл(а) в комнату
[18:36:50] bobry вышел(а) из комнаты
[18:43:13] ftrvxmtrx вышел(а) из комнаты
[19:06:46] bobry вошёл(а) в комнату
[19:07:13] bobry вышел(а) из комнаты
[19:07:50] <aleksey> ADEpt: там всё неправда? :)
[19:15:50] zinid вышел(а) из комнаты
[19:16:08] <f[x]> там много устаревшего :)
[19:16:56] <aleksey> древняя мартовская информация
[19:17:14] <f[x]> ну видно писали давно, а выложиди в паблик недавно
[19:20:41] <gds> касаемо окамла, информация моложе 10 лет не считается устаревшей.
[19:21:41] <f[x]> вголос
[19:22:34] <gds> ну хоть выиграл, а не как на этом псачике?
[19:23:14] <f[x]> шин
[19:23:18] <f[x]> надо чистить мову
[19:26:56] Typhon вышел(а) из комнаты
[19:27:00] <gds> не надо, и так чистая-чистая, конкретная-конкретная, в натуре.
[19:27:24] Typhon вошёл(а) в комнату
[19:29:08] Typhon вышел(а) из комнаты
[19:42:02] f[x] вышел(а) из комнаты
[20:23:19] Kakadu вышел(а) из комнаты
[20:55:16] letrec вышел(а) из комнаты
[22:15:24] Kakadu вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!