Home
Objective Caml
ocaml@conference.jabber.ru
Понедельник, 27 февраля 2012< ^ >
f[x] установил(а) тему: OCaml / ОКамл / Камль -- http://caml.inria.fr | http://camlunity.ru/ (теперь с git доступом!) | Верблюды грязи не боятся! | release crap, enjoy NIH | репортьте баги официальным дилерам | ocaml мёртв и тормозит, move on | stdlib only? - ССЗБ | Fight FUD with fire
Конфигурация комнаты
Участники комнаты

GMT+4
[00:06:11] <komar> gds: слышь.
[00:06:25] <komar> Дай че-нибудь не требующее специальных знаний, но уму не постижимое.
[00:06:33] <komar> Я знаю, у тебя должен быть такой матан. Ты академик у нас.
[00:07:27] <gds> komar: забавно, что сейчас решил заняться.  надо подумать.
[00:08:06] <bobry> gds: ты вестимо не подписан на @komar
[00:08:16] <gds> bobry: подписан, потому и забавно.
[00:08:23] <bobry> ах :)
[00:08:23] <komar> Я не могу ждать ответов от всех этих десяти тормозов, мне надо еще в промежутке чем-то заняться.
[00:08:41] <komar> Ладно, извините, что сюда насрал.
[01:07:50] bobry вышел(а) из комнаты
[01:09:13] bobry вошёл(а) в комнату
[01:30:07] bobry вышел(а) из комнаты
[01:36:54] Kakadu вышел(а) из комнаты
[01:46:13] f[x] вошёл(а) в комнату
[03:32:00] leterec вошёл(а) в комнату
[03:32:13] leterec вышел(а) из комнаты
[03:32:29] leterec вошёл(а) в комнату
[03:44:17] gds вышел(а) из комнаты
[03:44:42] f[x] вышел(а) из комнаты: Computer went to sleep
[04:17:27] Typhon вошёл(а) в комнату
[04:46:29] leterec вышел(а) из комнаты
[05:03:24] ftrvxmtrx вышел(а) из комнаты
[05:03:46] ftrvxmtrx вошёл(а) в комнату
[06:41:03] ermine вошёл(а) в комнату
[08:56:03] komar вышел(а) из комнаты
[09:03:01] gds вошёл(а) в комнату
[10:42:10] dzhon вошёл(а) в комнату
[10:42:15] <dzhon> здравствуй, Катька
[10:42:31] <dzhon> упс
[10:42:53] <dzhon> Не туда, кхм.
[10:43:18] <dzhon> Позволю себе перевести тему на онтопик: камло новое скоро релизится ? :)
[10:45:31] <gds> вроде были слухи про начало лета, но не помню, откуда, и не помню, точно ли такие.
[10:56:30] <dzhon> Кстати, на чем там нынче UI модно делать ? Тут вроде был товарищ, который Qt портировал, как оно ? :)
[11:01:22] <gds> qt -- не доделал.
ui -- labltk для tcl/tk-подобного гуя, lablgtk2 для gtk2.
[11:06:24] dzhon вышел(а) из комнаты: Replaced by new connection
[11:06:29] dzhon вошёл(а) в комнату
[11:32:02] ftrvxmtrx вышел(а) из комнаты
[11:39:27] komar вошёл(а) в комнату
[11:42:06] superbobry вошёл(а) в комнату
[11:48:13] <gds> typerex кое-как завёлся.  теперь спрашиваю у турпина, как отключить нахрен всю раскраску синтаксиса.  интересно, не хватит ли его удар.
[11:55:49] klapaucius вошёл(а) в комнату
[11:56:53] Kakadu вошёл(а) в комнату
[12:07:13] ftrvxmtrx вошёл(а) в комнату
[12:15:23] <f[x]> gds: про utf8 в %S надо пожаловаться в мантис
[12:16:13] <f[x]> для стандартных исключений по-моему exception printer не вызывается
[12:16:22] <gds> у этого %S может быть разный смысл в зависимости от требований.  Прям так они и будут это менять, размечтался.
[12:16:52] <f[x]> gds: у него семантика определена - это строка которую камль может всосать обратно
[12:17:30] <gds> а вдруг кто-то гоняет эти строки через терминал, в котором не поддерживается utf8?
[12:18:46] <f[x]> слабенький аргумент
[12:19:12] <f[x]> по идее ничего с этими строками не случится, равно как и с терминалом :D
[12:24:18] <gds> ещё гадость в том, что наверняка есть куча старого кода, использующего это дело.  уверен, упрутся рогом, настолько уверен, что не вижу смысла жаловаться им там.
[12:25:44] <f[x]> лентяй!
[12:25:53] <Kakadu> dzhon: qt с камлом не состыкуется норм, поняли что если портировать QtGui в лоб, то будут кастрированные байндинги. Сильно кастрированные. Так что фигачь лучше на Qml, а камло руками прикручивай.
[12:26:47] <superbobry> gds, как тебе typerex?
[12:32:31] Typhon вышел(а) из комнаты
[12:37:54] dzhon вышел(а) из комнаты: Replaced by new connection
[12:37:54] dzhon вошёл(а) в комнату
[12:53:50] <gds> superbobry: пока такие впечатления: 0. ГЛОЗА ВЫТЕКЛИ, 1. +rc-версии камла не понимает и это не исправят, пичалька, но культурный обход обещают в будущих версиях, и некультурный обход уже предоставили, 2. comment (из окамлдока каменты тащит) и definition (переходит к определению) -- хороши, rename (переименование идентификаторов) -- работают, prune/qualify не понадобились и навряд ли понадобятся (это с модулями -- удаление/добавление module paths в некоторых случаях), 3. чтобы работало с другими либами, нужно их тоже компилять через врапперы, но даже так, боюсь, надо будет как-то указывать при их инсталляции что-то типа "typerex-файлы тоже надо инсталлить!", 4. автокомплит -- хочу заценить обязательно, но см.п.0, а турпин пока не пишет, 5. да, про врапперы -- чуть не порвал жопу, пока понял, как с минимальным гемором их использовать, и пока это -- исправление findlib-конфига, благо, у меня он локальный-юзерский, а фокусы с передачей через окружение не сработали, 6. если человек -- фанат подсветки синтаксиса, то скорее ему таки понравятся расцветочки весёленькие.
[12:54:14] <gds> f[x]: не лентяй, а реалист.  камло же сдохло :[
[12:56:41] <gds> superbobry: 4. точнее, комплит хочу заценить реально, а с автокомплитом -- разве что поиграться и выкинуть к членам.
[12:59:38] <gds> 3. venv'ы подошли бы тут неплохо -- собрал нужные либы, с которыми постоянно работаешь, и перекомпилял бы их одним махом, указав другие ocamlc/ocamlopt.
[13:21:44] <dzhon> Kakadu: резонно, особенно с нацелом на Qt5 :)
[13:21:50] <dzhon> они совсем решили уйти в динамику
[13:22:18] <dzhon> получается, правда, очень компромиссное решение -- типобезопасный код на камле и скриптовое UI :)
[13:22:25] <Kakadu> dzhon: можешь покодить генерилку байндингов к qml
[13:22:33] <dzhon> о, а это уже толково
[13:22:34] <Kakadu> dzhon: а то qrntz куда-то пропал
[13:23:06] <Kakadu> dzhon: мы там придумали что во входном файле писать, надо сейчас пасилку ямла подпилить
[13:23:52] <Kakadu> dzhon: https://github.com/Kakadu/lablqt/tree/master/moc
https://github.com/Kakadu/lablqt/issues/11
[13:24:29] <dzhon> lablqt -- это биндинг именно к плюсому Qt ?)
[13:24:35] <dzhon> не qml* ?
[13:24:44] <Kakadu> dzhon: там свалка
[13:24:49] <dzhon> ааа
[13:25:00] <dzhon> надо форкнуть, почитать исходники
[13:25:01] <dzhon> :)
[13:25:04] Typhon вошёл(а) в комнату
[13:25:12] Typhon вышел(а) из комнаты
[13:25:26] <Kakadu> собственно генератор для qml это только первая ссылка
[13:25:30] <Kakadu> там просто нечего читать
[13:25:38] <Kakadu> есть куча кода для legacy qt
[13:25:51] <Kakadu> не думаю что его читать очень полезно
[13:26:07] <dzhon> хм, оке
[13:26:52] <Kakadu> dzhon: попробуй покомпилять тестовый пример: https://github.com/Kakadu/lablqt/tree/master/qml/test1
[13:27:16] <dzhon> оу, это не скоро, пока тут работка :)
[13:27:30] <dzhon> но попробую, отпишусь здесь
[13:27:32] Typhon вошёл(а) в комнату
[13:27:55] <gds> про typerex -- круто, что с п.3 я ошибся.  Например, для кадастра достаточно указать в .typerex директиву "I +site-lib/cadastr" и по крайней мере сигнатуры функций-значений он показывает.
[14:01:37] ftrvxmtrx вышел(а) из комнаты
[14:08:36] dzhon вышел(а) из комнаты: Replaced by new connection
[14:08:36] dzhon вошёл(а) в комнату
[14:09:32] ftrvxmtrx вошёл(а) в комнату
[14:46:07] shaggie вошёл(а) в комнату
[15:29:31] leterec вошёл(а) в комнату
[15:29:43] leterec вышел(а) из комнаты
[15:29:59] leterec вошёл(а) в комнату
[15:55:40] dzhon вышел(а) из комнаты
[16:58:56] <gds> (setq font-lock-global-modes '(not typerex-mode))
(setq ocp-syntax-coloring nil)
благодарен турпину, он спас мои глоза.  Теперь всё, подсел на typerex.  Такие дела.
[17:35:24] ermine глянула на lambda-term и поняла, на что lwt/text и lwt/top хотят заменить, видимо и rlwrap тоже будет ненужным
[18:31:34] <f[x]> gds: а фигли в objsize define'ы в сишных файлах?
[18:31:39] Kakadu вышел(а) из комнаты
[18:33:54] <gds> f[x]: пока было пофиг, работает же, хлеба не просит.  Если вдруг стало не пофиг -- пофиксим без проблем, но хоть расскажи, в чём дело.
[18:34:05] <f[x]> ocamlbuild
[18:34:50] <gds> он хочет define в .h?
[18:35:05] <f[x]> а, подожди
[18:35:12] <f[x]> ты эти сишные и инклудишь
[18:36:36] <f[x]> он пытается их компилить как честные сишные файлы
[18:39:17] <gds> плохо дело.
[18:39:46] <f[x]> переименовал в .h
[18:40:14] <gds> если заработает -- сообщи, так и сделаю у себя.
[18:45:51] komar вышел(а) из комнаты
[18:46:15] komar вошёл(а) в комнату
[18:46:39] <f[x]> > #include <memory.h>
это FAIL
[18:49:02] <gds> дело в /usr/include/memory.h?
[18:50:01] <f[x]> аха
[18:51:38] <gds> по идее, #include "ocamlsrc/byterun/memory.h" надо?
[18:52:06] <gds> но вообще, раньше такого не было!11
[18:53:28] <f[x]> угу
[18:57:46] <f[x]> а какие тэги нужны для revised
[18:57:57] <f[x]> мой camlp4 твой синтаксис не понимай
[18:58:09] <f[x]> pkg_camlp4, syntax_camlp4r
[18:58:11] <f[x]> не хотит
[18:58:18] <gds> тег camlp4r
[18:58:25] <gds> иногда ещё -camlp4o
[19:00:09] <f[x]> о
[19:00:39] <gds> как я понял, ты серьёзно взялся за дело.  Учитывая твою сознательность, видимо, проще будет взять у тебя результат работы и тупо зарелизить его как следующую версию, разумеется, с поправленным авторством.
[19:00:50] <f[x]> интересно что имел ввиду Герд когда писал :
archive(syntax,preprocessor,camlp4r) = "-parser r -parser rp -printer p"
[19:00:59] <f[x]> убираю rp - и ок
[19:01:02] <f[x]> ну пофиг
[19:01:12] <f[x]> просто camlp4r работает
[19:01:35] <f[x]> ну патч я тебе зашлю конечно
[19:02:03] <gds> а, вспомнил, -camlp4o надо в случаях, когда под тег camlp4r попадают всякие ...lexer.ml
[19:02:15] <gds> ну и прочее, что сознательно в original syntax.
[19:15:40] <f[x]> а scm у тебя что?
[19:15:44] <f[x]> меня dist таргет пугает
[19:15:52] <f[x]> я всегда git archive делаю и всё
[19:22:34] <gds> f[x]: да, понимаешь, в дикие времена я это говно лепил.  какой такой scm, ни малейшего представления!
в текущей репке -- меркуриал, у него такая фича есть, но надо посмотреть, будет ли там всё нормально.
с другой стороны, ничего аццкого (в плане безопасности) не вижу в dist.  ну, шеллота всякая, да.
[19:24:29] <f[x]> ну список файлов который расширился
[19:24:41] <f[x]> короче dist будет поломанный - посмотришь ;)
[19:26:19] <gds> чего смотреть, релизить надо!1111
[19:27:41] <gds> в общем, учёл идею.
кстати, вот конкретно dist я специально как-то тестил на собираемость, каким-то скриптом, что ли.  но помню этот момент.  ни версии не мог выпустить без теста.
[19:58:18] komar вышел(а) из комнаты: Replaced by new connection
[19:58:19] komar вошёл(а) в комнату
[20:09:40] ftrvxmtrx вышел(а) из комнаты
[20:14:56] <f[x]> (gdb) call c_objsize(*((void**)*0x66fee0),0,0,0)
(gdb) p acc_data
$6 = 20
[20:14:59] <f[x]> WIN
[20:18:20] <gds> што это
[20:19:23] <f[x]> это дёрганье objsize из gdb
[20:19:56] <f[x]> сейчас вкручу ещё вызов хука на каждое значение и проход по рутам рантайма и получится memory profiler
[20:21:35] <gds> а я-то думал, что опять что-то упало, а я и не заметил.
но твой профайлер будет смотреть только на core dump, так?
[20:22:32] <f[x]> можно и в живой процесс цепляться, но очевидно только в тех местах где хип в норме
[20:25:33] <gds> грамотная идея.
[20:44:22] komar вышел(а) из комнаты: Replaced by new connection
[20:44:23] komar вошёл(а) в комнату
[20:51:18] Kakadu вошёл(а) в комнату
[20:58:20] <f[x]> только ж не факт что руты не пересекаются
[21:04:36] leterec вышел(а) из комнаты
[21:06:15] <gds> это да, будет суммироваться всё.  впрочем, можно налепить жосткий хак: выполнять дополнительный код перед входом и после выхода из считалки, который будет помечать указанные значения как посещённые (а перед выходом -- возвращать старые "цвета мусорщика"), чтобы не считать их при самом выполнении.  скорее всего прокатит трюк.  если будет надо -- сообщи, накодю.
[21:11:00] gds вышел(а) из комнаты
[21:16:15] <f[x]> угу, или проще сохранить список рутов в виде маллокнутого камлевого массива и его скормить objsize'у
[21:21:59] <f[x]> http://paste.in.ua/3921/
[21:22:33] shaggie вышел(а) из комнаты
[21:24:20] <f[x]> gds: как думаешь, имеет смысл собирать это распределение по тэгам всегда (т.е. при вызове objsize и возвращать вместе с общим размером) или только в iter_roots?
[21:27:38] <f[x]> gds: http://camlunity.ru/swap/objsize_patches/
[21:44:00] bobry вошёл(а) в комнату
[22:01:50] f[x] вошёл(а) в комнату
[22:20:00] ftrvxmtrx вошёл(а) в комнату
[22:42:09] klapaucius вышел(а) из комнаты
[22:48:37] komar вышел(а) из комнаты
[22:53:07] komar вошёл(а) в комнату
[23:28:46] Typhon вышел(а) из комнаты
[23:39:09] ermine вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!