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

GMT+4
[00:22:16] bobry вошёл(а) в комнату
[00:53:47] ygrek вышел(а) из комнаты
[01:01:36] komar вышел(а) из комнаты: Replaced by new connection
[01:01:37] komar вошёл(а) в комнату
[01:44:04] komar вышел(а) из комнаты
[01:45:08] Kakadu вышел(а) из комнаты
[01:55:11] komar вошёл(а) в комнату
[02:24:26] bobry вышел(а) из комнаты
[02:39:29] Typhon вошёл(а) в комнату
[02:54:40] tilarids вошёл(а) в комнату
[02:57:38] Typhon вышел(а) из комнаты
[02:58:19] Typhon вошёл(а) в комнату
[03:20:05] Typhon вышел(а) из комнаты
[03:32:31] letrec вышел(а) из комнаты
[03:32:35] letrec вошёл(а) в комнату
[04:00:53] tilarids вышел(а) из комнаты
[04:45:15] letrec вышел(а) из комнаты
[06:37:08] klapaucius вышел(а) из комнаты
[06:56:49] ermine вошёл(а) в комнату
[08:23:13] bobry вошёл(а) в комнату
[08:36:43] bobry вышел(а) из комнаты
[09:59:08] bobry вошёл(а) в комнату
[10:12:37] ftrvxmtrx вышел(а) из комнаты
[10:52:31] tilarids вошёл(а) в комнату
[10:53:06] tilarids вышел(а) из комнаты
[10:53:27] tilarids вошёл(а) в комнату
[10:56:03] ftrvxmtrx вошёл(а) в комнату
[12:03:39] Andrey Popp вошёл(а) в комнату
[12:16:56] <f[x]> пусти называется коммитера в проект, он и релиз сделает
[12:17:22] <bobry> что такое?
[12:24:47] <f[x]> при этом ещё и ревертит коммиты которые фиксят сборку
[12:24:50] <f[x]> ну ваще
[12:25:02] <bobry> f[x]: ты про mldonkey?
[12:25:06] <f[x]> не, extunix
[12:31:03] Kakadu вошёл(а) в комнату
[13:00:53] <bobry> Module imports form a cycle:
         module `TwilightSparkle.Server' (src/TwilightSparkle/Server.hs)
        imports `TwilightSparkle.Context' (src/TwilightSparkle/Context.hs)
  which imports `TwilightSparkle.Task' (src/TwilightSparkle/Task.hs)
  which imports `TwilightSparkle.Monad' (src/TwilightSparkle/Monad.hs)
  which imports `TwilightSparkle.Server' (src/TwilightSparkle/Server.hs)
[13:00:55] <bobry> THIS IS HELL!
[13:01:07] <Kakadu> В камле также
[13:01:09] <bobry> кстати если кто не видел как в х-ле делаются рекурсивные модули
[13:01:15] <bobry> то рекомендую
[13:01:17] <bobry> посмеетсь
[13:01:25] <Kakadu> давай их сюда
[13:02:01] <bobry> http://www.haskell.org/ghc/docs/latest/html/users_guide/separate-compilation.html#mutual-recursion
[13:03:34] <f[x]> эта конфа по камлю? да. а как в х-е сделать рекурсивные модули?
[13:04:01] <Kakadu> f[x]: "Врага надо знать в лицо" (с)
[13:04:05] <gds> f[x]: не, ты зацени ссылку, реально смешно.
[13:05:43] <bobry> f[x]: ну я ш пояснил — чиста на поржать ссылочка
[13:06:02] <f[x]> да ок, я ж даже не возмущаюсь
[13:06:10] <f[x]> а эту тарабарщину я всё равно не понимаю
[13:06:28] <bobry> в двух словах — надо самому писать обрезанную версию модуля
[13:06:36] <bobry> в которой не будет рекурсивной зависимости
[13:06:39] <bobry> феерично
[13:06:48] <Kakadu> воситину
[13:10:34] tilarids вышел(а) из комнаты
[13:21:59] tilarids вошёл(а) в комнату
[13:33:53] Sun][ вошёл(а) в комнату
[13:37:59] tilarids вышел(а) из комнаты
[13:40:12] tilarids вошёл(а) в комнату
[13:45:29] shaggie вошёл(а) в комнату
[14:14:50] akovbovich вошёл(а) в комнату
[14:16:53] <f[x]> а как предлагается обходить "missing initializer for XXX.compare_ext" ?
[14:16:57] <f[x]> так чтобы backward-compatible?
[14:17:10] <f[x]> на какой define завязаться?
[14:17:42] <f[x]> номера версии не видно нигде
[14:26:35] tilarids вышел(а) из комнаты
[15:07:58] klapaucius вошёл(а) в комнату
[15:14:41] tilarids вошёл(а) в комнату
[15:15:16] tilarids вышел(а) из комнаты
[15:15:29] tilarids вошёл(а) в комнату
[15:16:33] <klapaucius> Обрезанную версию сигнатуры модуля.
[15:18:23] <f[x]> будет
#if defined(custom_compare_ext_default)
[15:21:53] <Kakadu> bobry: Ну после выпиливания утечки у тебя появится время на барбариску?
[15:31:41] letrec вошёл(а) в комнату
[15:31:53] letrec вышел(а) из комнаты
[15:32:08] letrec вошёл(а) в комнату
[15:47:12] akovbovich вышел(а) из комнаты
[15:47:29] <bobry> Kakadu: к сожалению до мая точно не будет, НИР поджимает
[15:48:26] <Kakadu> тебе в универе уже заставляют её выбирать?
[16:04:21] Typhon вошёл(а) в комнату
[16:07:23] <bobry> мне в мае ее уже сдавать :)
[16:07:30] <bobry> это для курсов
[16:43:40] akovbovich вошёл(а) в комнату
[17:27:54] <f[x]> а как в 3.12 в _tags указать ворнинг по номеру?
[17:30:10] <f[x]> похоже никак, французы маладца
[17:31:06] <Kakadu> помню как в барбре пытался ворнинг включить. В итоге тупо включил всё.
[17:34:52] <f[x]> pflag ["ocaml";"compile";] "w" (fun s -> S [A "-w"; A s])
[17:52:45] f[x] наконец белый человек и enjoy'ит 3.12 фичи
[18:06:38] <gds> f[x]: колись, какие и зачем.  (надо же знать, чем заманивать на >=3.12)
[18:07:01] <f[x]> ну let open in и { x; _ }
[18:07:08] <f[x]> также ocamlbuild -use-ocamlfind
[18:07:31] <f[x]> это из того что я сразу при переходе заюзал
[18:07:38] <gds> понял.  Полезные фичи, факт.
[18:08:01] <f[x]> вроде мелочи, но очень приятно
[18:11:47] Kakadu вышел(а) из комнаты
[18:15:09] <f[x]> обожаю читать сгенеренный код выведенный через format с шириной 80 колонок
[18:16:17] <f[x]> а camlp4o -l 200 меня игнорит
[18:18:30] <f[x]> и какого фига камло вызывает gcc без -g ?
[18:31:17] shaggie вышел(а) из комнаты
[18:37:07] komar вышел(а) из комнаты: Replaced by new connection
[18:37:07] komar вошёл(а) в комнату
[18:47:42] shaggie вошёл(а) в комнату
[19:01:17] Kakadu вошёл(а) в комнату
[19:06:10] Sun][ вышел(а) из комнаты
[19:21:00] ftrvxmtrx вышел(а) из комнаты
[19:55:18] <bobry> Учитесь писать компеляторы
[19:55:20] <bobry> Warning: `unsafeFind' is exported by `unsafeFind' and `unsafeFind'
[19:55:26] <bobry> сразу понятно о чем предупреждает
[19:59:19] bobry вышел(а) из комнаты
[20:05:54] letrec вышел(а) из комнаты
[20:17:50] <f[x]> камло тут вне конкуренции
[20:17:53] <f[x]> я знаю два примера
[20:17:59] <f[x]> правда оба в транке уже пофикшены
[20:25:34] Kakadu вышел(а) из комнаты
[20:26:52] Kakadu вошёл(а) в комнату
[20:49:44] <Typhon> а какой второй?
[20:56:11] shaggie вышел(а) из комнаты
[20:58:33] Andrey Popp вышел(а) из комнаты
[21:01:26] akovbovich вышел(а) из комнаты
[21:10:58] bobry вошёл(а) в комнату
[21:27:54] Typhon вышел(а) из комнаты
[21:56:17] <bobry> а можно ли в камле func. dep. поиметь? что-то не могу ничего нагуглить?
[22:07:16] akovbovich вошёл(а) в комнату
[22:16:03] <gds> bobry: уточняй вопрос конкретно.  мы же камло..ы, мы же тупыыииии.
[22:18:38] <bobry> gds: я не уверен что могу сформулировать это в терминах камла, в х-ле funcdep ограничивает полиморфизм тайп класса, устанавливая зависимость между type variables
[22:19:01] ermine вышел(а) из комнаты
[22:38:11] akovbovich вышел(а) из комнаты
[22:46:24] tilarids вышел(а) из комнаты
[22:49:10] komar вышел(а) из комнаты
[23:04:28] tilarids вошёл(а) в комнату
[23:31:02] <gds> bobry: ну давай тогда постепенно формулировать.  чем ты собираешься эмулировать тайпклассы?  вариантов куча.
[23:31:58] <bobry> ну например объектами, можно же?
[23:37:00] ftrvxmtrx вошёл(а) в комнату
[23:37:48] <gds> вполне можно.  Тогда -- constraint на описании типа класса, лиминтарно.
[23:40:40] <bobry> ну смотри, там например такое можно class Foo a b | a -> b ... == для каждого a может быть только одно b, т. е. первый тип однозначно определяет второй
[23:41:54] <gds> по какому принципу из a получается допустимое b?
[23:43:22] <bobry> я увы только в терминах х-ля могу проиллюстрировать
[23:43:24] <bobry> пойдет?
[23:43:45] <gds> да, только потупее пример.
[23:44:38] <bobry> например есть у нас функция bar :: Foo a b => a -> Int
внутри нее мы пользуем какие то методы связанные с type classом b
[23:44:48] <bobry> мы можем это сделать, даже не смотря на то что тип b не указан явно
[23:44:57] <bobry> потому что по a мы всегда знаем b
[23:45:21] <bobry> в моем случае это пригодилось например для бд -- связь таблица -- data type ограничена как раз через func. dep
[23:47:32] <gds> если вывести тип 'b из типа 'a прост, то
class foo_base ['a] = ...
class foo ['a, 'b] = inherit foo_base ['a, some type over 'a]
[23:47:59] <bobry> а что значит some type over a?
[23:48:58] <gds> ну, например, ['a, array 'a].  или [tycon1 'a, tycon2 'a]
[23:50:55] <bobry> а, гм, а если там произвольный тип?
[23:51:22] <gds> насколько произвольный -- 'b из 'a не получается никак?
[23:51:34] <bobry> допустим что в данном случае нет
[23:51:46] <bobry> хотя может быть и обратная зависимость b -> a
[23:53:56] <gds> (кстати, прогнал насчёт примеров, но всё делается подобным образом.)
но пофиг, что a из b или b из a.
[23:53:59] shaggie вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!