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

GMT+4
[00:01:54] <vshender> ygrek: можно подробнее о typedtree?
[00:03:08] <ygrek> это всё собственно, цитата
[00:03:37] <ygrek> пишите говорит
[00:04:09] <vshender> А ocamlspotter сейчас в каком состоянии? Я когда-то лишь краем уха о нем слышал?
[00:04:20] <ygrek> кстати про CLA (contributor license agreement) - copyright остаётся у автора, а inria получает право делать с кодом всё что хочет (аналогично как у asf)
[00:04:34] <ygrek> недавно релиз вроде был
[00:06:17] <vshender> На самом деле проблема и в сложности OCaml (реализации). Самые компетентные люди (создатели) с большего потеряли к нему интерес, а потенциально компетентные из-за этого боятся вкладывать ресурсы в язык
[00:11:09] <ygrek> ну опять-таки в видео/слайдах говорится что корпорации вкладываются (кроме денег) - lexifi и janest пишут код
[00:13:10] <vshender> Да, знаю, но! во первых пока неясен тренд: 3.12 -- первый релиз с явным количеством стороннего кода (могу ошибаться, поправьте), пока это капля в море. Но сам факт меня очень порадовал. Так же, как и фичи, особенно first-class modules
[00:13:53] <vshender> janest (самая громкая из пользователей вроде) пока больше всего библиотеками засветилась. Но не знаю, может был вклад в 3.12
[00:14:00] gds вышел(а) из комнаты
[00:14:09] <ygrek> я выше про CLA упомянул, до этого ведь была проблема с неясным юрстатусом
[00:15:16] <ygrek> mark shinwell в mantis/svn встречался
[00:15:45] <valexey_> не понял. так что, камло начало откапываться?
[00:16:00] <vshender> valexey_: пока не ясно :)
[00:16:18] <vshender> Но звоночки оптимистичные позванивают
[00:16:19] <ygrek> нет, это специалисты-закапыватели
[00:16:23] <valexey_> но явно зашевелился. толи будет закапываться активно, то ли наоборот :-)
[00:17:16] <vshender> Просто, явного энтузиазма за малым исключением нету. Пик популярности прошляпили, возможно небольшого количества вкладываемых ресурсов не хватит, чтобы "запустить машину"
[00:17:19] <zert> может это опарыши выкормились и превращаются в мух?
[00:17:28] <zert> вспорхнут и не станет никакого окамля
[00:17:48] <vshender> "Камло" не умрет еще долго, но существование может быть весьма не радужным
[00:18:06] <vshender> Реально, такие сдвиги нужно было делать года 4 назад
[00:18:33] <valexey_> административные сдвиги. забавно.
[00:18:51] <valexey_> забавно как развитие технологий зависят от всякого юридического хлама
[00:19:20] <vshender> Не только юридического. Очень много факторов
[00:19:34] <vshender> Достаточно вспомнить уже упомянутый stackless python
[00:19:36] <vshender> Да и само ядро linux
[00:19:54] <valexey_> а что там?
[00:19:54] <vshender> Когда "главный дядя" слишком главный
[00:20:08] <Typhon> стаклесс пайтон пишут два человека, насколько я наблюдаю по рассылке :)
[00:20:22] <vshender> Ну, когда-то оно хотелось в главную ветку
[00:20:30] <vshender> Но Гвидо сказал: нет
[00:20:47] <vshender> Брат его, кстати, (Гвидо) был (может есть, не в курсе) приверженцем stackless
[00:21:20] <valexey_> ну ядро линуха достаточно успешно развивается. и компании туда вкладываются очень хорошо.
[00:21:52] <vshender> Ну, тут не только о факте развития (python тоже развивается), а о направлении оного
[00:22:21] <zert> в линупце просто главный дядя достаточно вменяем
[00:22:24] <vshender> По поводу ядра одна только история с Коливасом
[00:22:29] <vshender> чего стоит
[00:22:35] <vshender> :)
[00:22:36] <zert> да чего она стоит?
[00:23:33] <vshender> Я не к тому, чтобы решать тут, прав Линус, или нет, а к тому, что власти то у него весьма много, а человек, один человек, не может быть всегда прав, рано или поздно ошибается
[00:24:13] <valexey_> всё же в линупсе не какая-то юр. организация странно-академическая, а вполне себе сообщество. хоть и с весьма вертикалью.
[00:24:14] <vshender> В случае с Линусом, Гвидо, Лукашенко (бульбосрач) -- слишком много власти в одних руках. Нет объективного стороннего влияния.
[00:24:16] <vshender> :D
[00:24:28] <Typhon> комитеты тоже не вариант -- пример с++ ^_^
[00:24:44] <vshender> Хез, может что-то вроде core-team...
[00:24:55] <zert> а типа диумвират (невтесрач) — дико годно
[00:24:59] <vshender> Вообще критиковать легко, конструктивно -- сложнее. Хез как лучше
[00:25:08] <zert> да, сперва добейся сам
[00:25:11] <zert> гг
[00:26:13] <valexey_> мне развитие С++ вполне нравится. комитеты рулят :-)
[00:26:57] vshender разочаровался в C++ лет 5 назад. До этого считал его великолепным языком. С тех пор на нем ничерта не писал.
[00:26:57] <zert> кресты катятся в ё*аное го*но?
[00:27:17] <vshender> кресты уже там :)
[00:27:39] <zert> им ещё хуже, чем окамлю
[00:27:41] <vshender> Достаточно было namespace'ов, классов, исключений и шаблонов, как способа реализации коллекций
[00:27:49] <valexey_> с крестами всё в порядке :-)
[00:27:51] <vshender> А нагородили мути
[00:29:32] <vshender> Не все -- они чрезмерно усложнены, и эта сложность -- типичная иллюстрация правила 80/20
[00:29:36] <vshender> Ну не стоит профит этого
[00:29:56] <vshender> Читали, какой C++ пользуют в google?
[00:30:04] <zert> какой?
[00:30:26] <valexey_> читали.
[00:30:31] <valexey_> и приняли к сведению.
[00:30:43] <vshender> Запрещены куча его фичастостей... Ибо нехрен... Но ссылки под рукою нет.
[00:31:09] <vshender> Хотя, думаю, быстро нагуглится
[00:31:14] <valexey_> с другой стороны у нас используются шаблоны по полной. для реализации конечного автомата. используется именно их тьюринг-полнота. и с этого есть профит. и неплохой.
[00:31:37] <valexey_> http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml
[00:31:50] <valexey_> stl там таки используется :-)
[00:32:01] <vshender> А я за STL
[00:32:06] <vshender> Но против boost
[00:32:34] <vshender> valexey_: а какой профит?
[00:32:44] <ygrek> fsm кодогенерировать и всё
[00:32:51] <vshender> Как пример
[00:33:11] <vshender> Или макросы а-ля lisp -- ваш конечный автомат делается на коленке за пару часов
[00:33:31] <valexey_> профит в том, что 1) вся fsm как на ладони. 2) её легко менять. 3) не нужны внешние тулзы. 4) в момент компиляции проверяются ошибки в логике fsm
[00:33:35] <zert> http://stackoverflow.com/questions/3399956/pattern-matching-f-vs-erlang
[00:33:36] <vshender> Шаблоны ИМХО далеко не лучший способ метапрограммирования. Поэтому и не стоит их для этого использовать
[00:34:13] <ygrek> лучший
[00:34:19] <ygrek> для выноса мозгов
[00:35:08] <zert> метапогромировать надо на лиспе
[00:35:12] <vshender> 1) Хм. Чем именно применение шаблонов обеспечивает "наладонность"?
2) Легко менять и для внешнего кодогенератора, например (даже легче, при нормально спроектированном DSL).
3) Это проблема C++. Можно было сделать более адекватное средство метапрограммирования, было бы легче, и без внешних тулзов.
4) Как?
[00:35:21] <vshender> zert: и на лиспе не все гладко :)
[00:35:27] <vshender> Слишком низкоуровнево
[00:35:32] <zert> тогда на xml
[00:35:55] <vshender> Отладка, поиск ошибок -- гораздо сложнее чем в случе, например, с camlp4
[00:36:01] <vshender> Не, только не xml :)
[00:36:06] <vshender> Уж лучше lisp
[00:36:09] <valexey_> что значит как? так. шаблоны тьюринг-полны. проверить можно как угодно.
[00:36:11] <vshender> Точно лучше
[00:36:25] <valexey_> минус ровно один -- компилируется долго.
[00:36:30] Typhon вышел(а) из комнаты: Replaced by new connection
[00:36:34] Typhon вошёл(а) в комнату
[00:37:09] <vshender> Хм, я думал, что ты о каких-то конкурентных преимуществах именно шаблонов. Конечно можно, но ничем не лучше, чем при использовании более адекватных инструментов.
[00:38:26] <vshender> Например camlp4'вское метапрограммирование много ошибок (по сравнению с lisp) находит благодаря типизации. Кроме того, хорошо реализован механизм определения местоположения каждого узла AST в исходной программе -- это тоже сильно помогает
[00:38:43] <valexey_> лучше в том плане, что не выходим за рамки языка.
[00:38:51] <valexey_> но таки на D было бы лучше, да.
[00:39:02] <vshender> valexey_: вот, и я о том же.
[00:39:04] <valexey_> устаканится D2, можно будет защупать.
[00:39:09] <valexey_> если устаканится.
[00:39:16] <vshender> Что это лучше в рамках доступной функциональности
[00:39:24] <vshender> А почему бы не сделать нормально. Проще и лучше.
[00:39:25] <valexey_> пока же альтернатив С++ для нас тут нет.
[00:39:31] <vshender> Тот же D куда приятнее выглядит
[00:39:37] <vshender> Хоть я его особо и не глядел..
[00:41:44] <valexey_> ну, D пилит александреска. знатный С++-извращенец :-)
[00:42:49] <vshender> Один из виновников (ну, если бы не он, тогда кто-нибудь еще, разумеется) того, что стали вытворять с C++
[00:42:51] <vshender> :)
[00:43:33] <valexey_> не так уж часто и вытворяют, кстати.
[00:43:49] <valexey_> т.е. жутко-шаблонно-извратного кодя в продакшине довольно мало.
[00:44:01] <valexey_> просто о нем кричат очень громко и в буст тычут пальцами.
[01:01:56] vshender вышел(а) из комнаты
[01:02:49] Typhon вышел(а) из комнаты: Replaced by new connection
[01:02:53] Typhon вошёл(а) в комнату
[01:22:57] ermine вышел(а) из комнаты
[01:36:02] Typhon вышел(а) из комнаты
[02:22:04] valexey_ вышел(а) из комнаты
[02:26:47] <zert> ещо свн не нужен потому, что гадит везде своими .svn, и когда грепаешь, всякий мусор попадается
[02:26:49] komar вышел(а) из комнаты
[02:36:55] ygrek вышел(а) из комнаты
[02:40:43] zert вышел(а) из комнаты
[06:52:31] vshender вошёл(а) в комнату
[06:53:05] vshender вышел(а) из комнаты
[06:53:13] vshender вошёл(а) в комнату
[07:29:37] komar вошёл(а) в комнату
[07:29:57] komar вышел(а) из комнаты
[07:50:58] iNode вышел(а) из комнаты
[08:16:17] iNode вошёл(а) в комнату
[08:27:06] Kakadu вошёл(а) в комнату
[09:00:34] gds вошёл(а) в комнату
[09:02:37] <gds> > Leroy в видео говорит что с удовольствием бы пришил typedtree в камло
в каком смысле "пришил"?
[09:03:31] Typhon вошёл(а) в комнату
[09:39:18] ygrek вошёл(а) в комнату
[09:54:15] serp256 вошёл(а) в комнату
[10:33:39] arhibot вошёл(а) в комнату
[10:51:10] <f[x]> дословно - integrated
[10:51:45] vshender вышел(а) из комнаты
[10:56:12] <gds> так typedtree уже integrated, глубже некуда -- после вывода типов как раз оно и получается, и из него дальше идёт компиляция.  Или имелось ввиду, что нужно как-то вытащить его наружу (импорт-экспорт или обработка плагинами а-ля camlp4)?
[11:09:46] ʇsʎɯ вошёл(а) в комнату
[11:15:16] <f[x]> ну да, экспорт
[11:18:36] <gds> ну да, там нетривиально будет, так как оно содержит lazy-значения (вроде что-то с "резолвингом" модулей-путей).  Конечно, можно их форсировать, но не знаю, как это повлияет на дальнейшую компиляцию из этого typedtree.
[11:43:16] <f[x]> Kakadu: на 32 битных тоже не падало
[11:44:02] <Kakadu> f[x]: спасибо
[11:44:17] <Kakadu> только всёравно проблему решать надо как-то
[11:45:11] <f[x]> версия qt либ и инклудов совпадает?
[11:45:39] <f[x]> поставь дебажные символы и дебажь, попробуй минимизировать
[11:46:31] <Kakadu> qt c дебажными есть, надо научиться дебажить
[11:46:48] <Kakadu> он меня всёравно в самый  интересный момент в файлы .so бросает
[11:50:42] vshender вошёл(а) в комнату
[11:51:35] ermine вошёл(а) в комнату
[12:45:19] zert вошёл(а) в комнату
[12:56:40] ygrek вышел(а) из комнаты
[13:17:01] abiogenesis вошёл(а) в комнату
[14:42:58] abiogenesis вышел(а) из комнаты
[15:19:52] ygrek вошёл(а) в комнату
[15:56:49] ygrek вышел(а) из комнаты
[17:03:56] arhibot вышел(а) из комнаты
[17:16:36] iNode вышел(а) из комнаты
[17:22:35] Kakadu вышел(а) из комнаты
[17:31:25] gds вышел(а) из комнаты
[17:56:29] Typhon вышел(а) из комнаты
[18:36:56] gds вошёл(а) в комнату
[18:43:26] komar вошёл(а) в комнату
[19:08:53] gds вышел(а) из комнаты
[19:20:19] gds вошёл(а) в комнату
[19:20:35] iNode вошёл(а) в комнату
[19:21:51] vshender вышел(а) из комнаты
[19:38:15] serp256 вышел(а) из комнаты
[19:43:07] ʇsʎɯ вышел(а) из комнаты
[19:56:20] ygrek вошёл(а) в комнату
[19:57:01] Kakadu вошёл(а) в комнату
[20:07:14] ermine открыла для себя такой полиморфизм: type t = { id: 'a. 'a -> 'a} (без вынесения 'a в type)
[20:07:25] <ermine> смешно, но я про это раньше не знала
[21:25:02] <ygrek> добро пожаловать в увлекательный мир higher rank полиморфизма :)
[21:57:23] arhibot вошёл(а) в комнату
[22:09:09] <ygrek> ermine: а как там на bsd - камло профайлится вообще? тут mldonkey на openbsd упорно не хочет gmon.out писать
[22:16:06] <ermine> ygrek: не помню уже, давно пробовала как-то юзать gprof и нативный код
[22:17:03] <ermine> а, вопрос в том как создать чота
[22:23:47] valexey_ вошёл(а) в комнату
[22:29:16] <ermine> ygrek: а это вроде больше к gcc относится чем к операционке
[22:31:33] <ygrek> ну мало ли, это ж bsd, у них всё не как у людей, я уже не знаю что и думать
[22:33:11] ermine сегодня на линуксном сервере пристреливала darcs, который без -9 не бился и жрал весь проц
[22:33:24] <ermine> как это им такое удается, на фре я такого никогда не видела
[22:34:57] <komar> Это даркс просто.
[22:35:17] <zert> хацкель же
[22:35:24] <zert> лень и жырнота
[22:35:28] <zert> жырнота и лень
[22:35:32] <zert> обломовщина
[22:36:30] <komar> И эти люди мне говорят, что окамл давно умер!
[22:37:02] <ermine> умер
[22:37:09] <ermine> ocsigen пока не собирается
[22:37:21] <komar> Чего говорит?
[22:38:52] <ygrek> ermine: сила фри против sigaction
open Sys
let () =
  set_signal sigterm Signal_ignore;
  set_signal sigint Signal_ignore;
  while true do () done
[22:41:46] <ermine> ygrek: я это уже видела где-то, а точнее - в моем боте, и удивлялась, почему надо было еще дополнительно чота сказать боту, чтобы оно наконец свалилось
[22:42:21] <ermine> только там вместо игнорилки был exit
[22:50:32] <ermine> и все еще нет ocamlduce для 3.12
[22:52:58] <ermine> хотя ocamlduce уже не нужен
[22:53:34] <komar> Уже наигралась?
[22:55:35] <ermine> давно
[22:55:44] <ermine> в этом сезоне я даже про него не вспоминала
[22:55:56] <ermine> а щас на подходе у них XHTML5
[22:56:39] <ermine> но плохо то что там нет технологии подгружаемых темплейтов
[22:57:06] <komar> Так никому не надо.
[22:57:40] <ermine> мне - нужны
[22:57:51] <komar> Ну вот ты и начинай писать.
[22:58:10] <ermine> ыгы
[22:58:19] <ermine> давно начала
[22:58:29] <komar> Мы просто сегодня с одним знакомым хаскеллистом пришли к такому выводу.
[22:59:22] <ermine> этот пункт в доке по eliom есть - темплейтов нет, но ничто не мешает тебе самому родить их
[23:00:02] <komar> Во, значит, правильно пришли.
[23:00:09] <ermine> мыслью блуждаю вокруг теории компиляции темплейтов на лету
[23:03:49] <ermine> komar: а ты представляешь, как одна прога генерит модуль в формате cmo и подргужает его в себя?
[23:04:13] <komar> А зачем ей генерить cmo?
[23:04:36] <ermine> чтобы переопределить функции
[23:04:41] <ermine> обновить
[23:05:10] <komar> Какие-то странные темплейты.
[23:05:18] <ermine> мне xhtml надо переформатировать на куске страницы
[23:05:31] <ermine> например форму передизайнить
[23:06:07] <komar> Ну пусть дизайнер и генерит эти cmo.
[23:06:10] <ermine> и сохранить результат на диске, чтобы в следующий раз не лопатить байты заново
[23:06:34] <ermine> через сайт
[23:06:53] <ermine> это в лоб, да, а красиво - как?
[23:08:05] ermine пошла читать про DFA в педии
[23:08:21] <komar> Э-э, не знаю. Это надо в процессе разбираться.
[23:10:25] Kakadu вышел(а) из комнаты
[23:11:11] <komar> Я, задавшись вопросом, «а не вынести ли мне весь HTML во что-нибудь вроде темплейтов, как белому рельсочеловеку», придумал только вынести весь код с ocamlduce в отдельные файлы, но потом и на это забил.
[23:15:14] valexey_ вышел(а) из комнаты
[23:32:08] gds вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!