Home
Objective Caml
ocaml@conference.jabber.ru
Вторник, 6 марта 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:00:57] ftrvxmtrx вышел(а) из комнаты
[00:03:00] gds вышел(а) из комнаты
[00:18:22] bobry вышел(а) из комнаты
[00:51:33] Kakadu вышел(а) из комнаты
[02:05:31] ermine вышел(а) из комнаты
[03:04:01] f[x] вышел(а) из комнаты: Computer went to sleep
[03:34:00] letrec вошёл(а) в комнату
[04:46:39] letrec вышел(а) из комнаты
[06:36:05] klapaucius вышел(а) из комнаты
[09:20:41] bobry вошёл(а) в комнату
[09:37:09] bobry вышел(а) из комнаты
[10:02:11] Mon вошёл(а) в комнату
[10:14:26] Mon вышел(а) из комнаты
[10:16:13] Mon вошёл(а) в комнату
[10:32:08] superbobry вошёл(а) в комнату
[10:38:08] gds вошёл(а) в комнату
[10:44:10] Mon вышел(а) из комнаты
[10:44:53] Kakadu вошёл(а) в комнату
[10:58:52] Mon вошёл(а) в комнату
[11:41:30] Mon вышел(а) из комнаты
[11:59:41] shaggie вошёл(а) в комнату
[12:02:22] Mon вошёл(а) в комнату
[12:05:03] ermine вошёл(а) в комнату
[12:31:55] klapaucius вошёл(а) в комнату
[12:41:12] ftrvxmtrx вошёл(а) в комнату
[12:58:55] Andrey Popp вошёл(а) в комнату
[15:29:15] letrec вошёл(а) в комнату
[16:23:33] <gds> рефакторить по typerex' semantic grep как-то удобнее, чем по ошибкам компилятора.  а именно, при расширении sum type учитывается не только "неполный match" для разрушения значения, но и те случаи, когда неплохо бы создавать новый вариант данного sum type.
[16:24:48] <superbobry> поясни? шота не понял
[16:26:26] <Kakadu> офигеть. Хвалы тайпрексу поет сам Стефано Зачиролли
[16:26:35] <superbobry> а это шо за мужык?
[16:26:44] <Kakadu> Debian Project Leader
[16:27:06] <letrec> а кто здесь пилил байндинги к QT?
[16:27:17] <Kakadu> letrec: я но я сейчас занят
[16:28:05] <letrec> Kakadu: а ты на QML смотрел?
[16:28:19] <Kakadu> я пришел к выводу что надо делать сразу qml
[16:28:29] <Kakadu> ибо из legacy байндингов не сделаешь
[16:28:38] <Kakadu> попиливается связывалка QML и камла
[16:28:43] <letrec> отлично, а твой ход мысле где-то озвучен?
[16:29:25] <Kakadu> ммм
[16:29:56] <Kakadu> https://github.com/Kakadu/lablqt/wiki/Inheritance-problem-with-mixed-C%2B%2B-OCaml-object-model если только
[16:30:05] <letrec> у меня возникла извращённая идея, что связка QML & js_of_ocaml могла бы неплохо взлететь
[16:30:38] <letrec> но надо как-то извлечь информацию о типах, торчавщих в JS
[16:31:20] <letrec> там нет нигде этой инфы в каком-то виде, отличном от C++ heades?
[16:31:36] <Kakadu> хз
[16:31:38] <Kakadu> давай потому
[16:31:41] <Kakadu> потом*
[16:31:51] <letrec> я так понимаю, что основной челендж это байндинги поиметь
[16:31:52] <letrec> ок
[16:32:32] Mon вышел(а) из комнаты
[16:38:06] Mon вошёл(а) в комнату
[16:38:50] <gds> superbobry: есть способ определить, где в исходниках используется конкретный тип данных.  вот и всё.
[17:31:03] <gds> а вот и нет, не все использования ловятся, а только те, где тип прописан (а не инферрится).  то есть, как помощь для рефакторинга, а не как решение.
[18:16:32] <Kakadu> letrec: тут?
[18:16:51] <letrec> Kakadu: да
[18:19:06] <Kakadu> > у меня возникла извращённая идея, что связка QML & js_of_ocaml могла бы неплохо взлететь
Там есть js_of_ocaml и был ocamljs от jake donham. ОДин из них транслирует код на камле. а дургой байт-код камля. Ясно что "другой" нам не пойдет. Нада вспомнить кто есть кто
[18:23:14] <Kakadu> > Ocamljs is a back-end to the existing OCaml compiler; it translates the “lambda” intermediate language to Javascript. (This is also where the bytecode and native code back-ends connect to the common front-end.) Js_of_ocaml post-processes ordinary OCaml bytecode (compiled and linked with the ordinary OCaml bytecode compiler) into Javascript.
[18:32:07] Kakadu вышел(а) из комнаты
[18:32:15] Kakadu вошёл(а) в комнату
[19:20:16] <letrec> Kakadu: то, что транслирует байткод
[19:20:34] <letrec> почему не подойдёт?
[19:21:11] <Kakadu> потому что... не знаю, очевидн
[19:25:17] <letrec> мне вот неочевидно почему оно работает для DOM, но не будет для QML
[19:25:31] <letrec> это разве не вопрос наличия байндингов?
[19:25:59] Andrey Popp вышел(а) из комнаты
[19:26:53] <Kakadu> короче нам нужна будет хрень, которая возьмет qml файл, выдерет оттуда камло, скомпилирует его в javascript и выплюнет ноый qml файл
[19:30:11] <letrec> т.е. по qml'ю надо сгенерить камловые типы, напротив них написать камлокод, а потом компильнуть его в JS, так ведь?
[19:36:06] <Kakadu> я думал по qml сгенерить новый qml где обработчики событий камла переписаны на js
[19:42:07] <letrec> чтобы на камле писать нормальный типизированный код надо же типы как-то поиметь, а писать на камле как на джаваскрипте профита ноль - один гемор
[19:42:27] <letrec> т.е. то, что ты говоришь верно, но это только часть правды
[19:45:47] <letrec> вот только непонятно как типы поиметь
[19:55:14] komar вышел(а) из комнаты
[20:07:47] superbobry вышел(а) из комнаты
[20:23:41] komar вошёл(а) в комнату
[21:03:27] bobry вошёл(а) в комнату
[21:09:48] ftrvxmtrx вышел(а) из комнаты
[21:11:04] shaggie вышел(а) из комнаты
[21:20:05] letrec вышел(а) из комнаты
[21:29:02] <bobry> товарищи, можно ли как нибудь поиметь вот такое в камле? https://github.com/bos/configurator/blob/master/Data/Configurator.hs#L230
[21:29:51] <bobry> или я обречен на require_int / require_string / etc
[21:33:44] <ermine> ю
[21:34:07] <ermine> если камлевая прога скомпилилась, то это означает, что типы данных правильно подобраны?
[21:35:52] <f[x]> на каждый type inference найдётся свой type guess!
[21:40:35] ftrvxmtrx вошёл(а) в комнату
[21:43:43] ftrvxmtrx вышел(а) из комнаты
[21:55:00] <bobry> ну так шо -- никто ничего не посоветует стало быть ..
[21:56:34] <f[x]> bobry: ты пример использования покажи, а то я эти х-езябры не понимаю
[21:56:52] <bobry> f[x]: хочется функцию которая возвращает 'a
[21:57:20] <bobry> тобишь шобы я из конфига мог достать int / float / int list etc
[21:57:20] <f[x]> т.е. ты хочешь ответ нра риторический вопрос
[21:57:24] <bobry> и все одной функцией
[21:57:33] <f[x]> или тебе в самом деле obj.magic посоветовать?
[21:57:51] <bobry> не :(
[21:58:11] <f[x]> ты пример кода на х-е покажи
[21:58:16] <f[x]> который использует эту фичу
[21:58:54] <bobry> http://paste.in.ua/3967/
[22:00:06] <bobry> в х-ле то все кошерно через тайп классы работает
[22:00:12] <bobry> а вот как в камле такое сделать -- хз
[22:09:34] <f[x]> ну lookup_default на фантомах можно сделать думаю
[22:10:19] <f[x]> lookup_default : 'a default -> config -> string -> 'a
[22:10:42] <f[x]> хотя это шило на мыло - будут create_default_int create_default_string итд
[22:10:47] <bobry> гм, как это может работать?
[22:10:56] <bobry> ах.. вот ты про что
[22:10:58] <f[x]> но я argue что в х-е в этих местах будут анноатции типов
[22:11:57] <f[x]> у меня конфиг выглядит так - http://paste.in.ua/3968/
[22:12:35] <bobry> мне бы еще list хотелось
[22:14:31] <f[x]> дело техники
[22:15:58] f[x] off
[22:16:11] <bobry> ну да, просто довольно уродливо Config.(list config int)
[22:19:13] Andrey Popp вошёл(а) в комнату
[23:27:50] ermine вышел(а) из комнаты
[23:47:55] dzhon вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!