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

GMT+4
[00:31:49] ftrvxmtrx вошёл(а) в комнату
[01:02:50] Andrey Popp вышел(а) из комнаты
[01:25:04] Kakadu вышел(а) из комнаты
[01:34:19] tilarids вошёл(а) в комнату
[02:21:04] dzhon вошёл(а) в комнату
[02:22:40] ftrvxmtrx вышел(а) из комнаты
[02:29:46] gds вышел(а) из комнаты
[02:48:43] akovbovich вошёл(а) в комнату
[02:50:22] akovbovich вышел(а) из комнаты
[03:09:58] ftrvxmtrx вошёл(а) в комнату
[03:22:03] ftrvxmtrx вышел(а) из комнаты
[04:32:09] dzhon вышел(а) из комнаты
[05:40:12] letrec вошёл(а) в комнату
[09:35:45] dzhon вошёл(а) в комнату
[10:23:31] Andrey Popp вошёл(а) в комнату
[10:32:01] <Andrey Popp> как ссылаться на тип модуля, возвращаемого функтором?
[10:32:20] vshender вышел(а) из комнаты
[10:32:46] <Andrey Popp> допустим вот на этот https://github.com/avsm/ocaml-cohttp/blob/master/lib/request.mli#L18
[10:33:43] letrec вышел(а) из комнаты
[10:36:59] Kakadu вошёл(а) в комнату
[10:42:13] vshender вошёл(а) в комнату
[10:47:18] gds вошёл(а) в комнату
[11:32:40] vshender вышел(а) из комнаты
[11:33:00] vshender вошёл(а) в комнату
[12:00:23] Andrey Popp вышел(а) из комнаты
[12:33:54] dzhon вышел(а) из комнаты
[13:47:15] ygrek вошёл(а) в комнату
[13:47:46] ygrek вышел(а) из комнаты
[13:48:04] ygrek вошёл(а) в комнату
[13:54:05] vshender вышел(а) из комнаты
[13:59:56] <ygrek> при оперделении функтора описывается сигнутара возвращаемого модуля, пож отдельным именем
[14:00:24] <ygrek> хм, тут нет под отдельным именем - сэкономили :)
[14:00:53] <ygrek> в 3.12 module type of (результат функтора) должно работать
[14:01:41] <ygrek> # module S = Set.Make(String);;
# module type T = module type of S;;
[15:38:31] Vinzent вошёл(а) в комнату
[17:29:10] Andrey Popp вошёл(а) в комнату
[17:31:48] Vinzent вышел(а) из комнаты
[17:44:42] letrec вошёл(а) в комнату
[17:44:52] letrec вышел(а) из комнаты
[17:45:07] letrec вошёл(а) в комнату
[17:45:42] Andrey Popp вышел(а) из комнаты
[17:48:04] Andrey Popp вошёл(а) в комнату
[18:12:41] Andrey Popp вышел(а) из комнаты
[18:17:04] Kakadu вышел(а) из комнаты
[18:25:30] Kakadu вошёл(а) в комнату
[18:26:10] tilarids вышел(а) из комнаты: Machine going to sleep
[18:26:14] gds вышел(а) из комнаты
[18:26:27] gds вошёл(а) в комнату
[18:28:21] akovbovich вошёл(а) в комнату
[18:54:34] akovbovich вошёл(а) в комнату
[19:10:08] tilarids вошёл(а) в комнату
[19:14:26] akovbovich вошёл(а) в комнату
[19:14:51] akovbovich вышел(а) из комнаты
[19:35:36] Andrey Popp вошёл(а) в комнату
[19:36:35] <Andrey Popp> ygrek, спасибо, но мне было хотелось сослаться на тип результирующего модуля без необходимости его инстанцировать
[19:38:46] <ygrek> а пока он не инстанциирован - это же не модуль
[19:38:56] <ygrek> т.к. зависит от типа аргумента функтора
[19:39:40] <ygrek> точнее нужен тип модуля который получится в результате применения функтора к данному аргументу но без собственно применения?
[19:39:40] <Andrey Popp> ygrek, но тип результата то должен быть
[19:39:49] <Andrey Popp> да
[19:41:37] <ygrek> # module X(S:sig end) = struct let () = print_endline "applied" type t = int end;;
module X : functor (S : sig  end) -> sig type t = int end
# module type T = module type of (X(struct end));;
module type T = sig type t = int end
[19:41:43] <ygrek> а похоже не применяется
[19:42:54] <ygrek> не знаю прописано ли это поведение где-то, но получается module type of не применяет функтор
[19:43:04] <ygrek> вообщем это логично т.к. тип то статическая штука
[19:43:57] <Andrey Popp> но в моём случае мне то нельзя просто написать Make(struct end) — там же требуется другой "не пустой" модуль...
[19:44:38] <ygrek> и?
[19:44:51] <ygrek> даже модуль аргумент выписывать нельзя?
[19:45:37] <Andrey Popp> и мне хочется писать код относительно использующий результать применения функтора независимо от аргумента... как-то не логично просовывать туда "хоть какой" модуль чтобы получить тип
[19:46:59] <ygrek> сигнатуры применять нельзя по-моему
[19:47:26] <ygrek> в рассылке стоит спросить
[19:48:31] <Andrey Popp> наверное, но странный вопрос для рассылки — вроде ничего сложно сделать не пытаюсь... может просто хочу чего-то неправильного
[19:49:06] <ygrek> рассылка она для странных вопросов и есть, не странные гуглятся :)
[19:49:55] <ygrek> > хочется писать код относительно использующий результать применения функтора независимо от аргумента
вот это вот по-моему значит что этот код сам будет функтором
[19:50:05] <ygrek> если независимо от аргумента
[19:50:22] <ygrek> а тогда легко можно делать module type of т.к. есть к чему применять
[19:51:48] Andrey Popp вышел(а) из комнаты
[19:59:06] Andrey Popp вошёл(а) в комнату
[19:59:54] <Andrey Popp> > вот это вот по-моему значит что этот код сам будет функтором
вроде не обязательно, я так понял функтором надо делать, если я хочу параметризовать код относительно чего-то, тут вроде не совсем такой случай
[20:00:37] <ygrek> а как тогда писать код "независимо от аргумента" функтора?
[20:01:02] <ygrek> хотя если fcm то может быть
[20:01:16] <ygrek> с примером окда было бы проще
[20:29:11] tilarids вышел(а) из комнаты: Machine going to sleep
[21:09:40] ygrek вышел(а) из комнаты
[21:21:54] letrec вышел(а) из комнаты
[23:06:38] komar вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!