Home
Objective Caml
ocaml@conference.jabber.ru
Пятница, 17 декабря 2010< ^ >
f[x] установил(а) тему: Камль -- http://caml.inria.fr | Логи -- http://chatlogs.jabber.ru/ocaml@conference.jabber.ru/ | Вики -- http://gdsfh.dyndns.org/kamlo/ | Верблюды грязи не боятся! | release crap | репортьте баги официальным дилерам | ocaml мёртв, move on
Конфигурация комнаты
Участники комнаты

GMT+3
[00:09:59] ermine вышел(а) из комнаты
[00:11:12] ygrek вышел(а) из комнаты
[00:22:27] ygrek вошёл(а) в комнату
[01:13:12] arhibot вышел(а) из комнаты
[01:47:02] komar вышел(а) из комнаты
[02:08:06] ygrek вышел(а) из комнаты
[02:21:49] Typhon вышел(а) из комнаты
[02:33:16] zert вышел(а) из комнаты
[04:35:27] ftrvxmtrx вышел(а) из комнаты
[04:35:45] ftrvxmtrx вошёл(а) в комнату
[04:47:08] ftrvxmtrx вышел(а) из комнаты
[04:47:24] ftrvxmtrx вошёл(а) в комнату
[04:48:21] vshender вышел(а) из комнаты
[05:40:07] ftrvxmtrx вышел(а) из комнаты
[05:40:25] ftrvxmtrx вошёл(а) в комнату
[05:45:33] ftrvxmtrx вышел(а) из комнаты
[05:46:49] ftrvxmtrx вошёл(а) в комнату
[08:18:13] iNode вышел(а) из комнаты: Replaced by new connection
[08:18:14] iNode вошёл(а) в комнату
[09:15:39] gds вышел(а) из комнаты
[10:06:55] Sergey Plaksin вошёл(а) в комнату
[10:16:45] ygrek вошёл(а) в комнату
[10:20:46] Sergey Plaksin вышел(а) из комнаты
[10:20:51] serp256 вошёл(а) в комнату
[10:32:21] gds вошёл(а) в комнату
[10:53:14] komar вошёл(а) в комнату
[11:15:13] <gds> а если я делаю методы без параметров, но с сайд-эффектами, но такие, которые навряд ли нужно будет передавать в виде функций (unit -> ...), то может разрешите мне их оформлять как методы без параметров?...
[11:15:30] <f[x]> разрешаю
[11:15:57] <gds> спасибо!11
[11:16:56] <gds> всякие fetchrow_* и fetchall_* будут без параметров, а вот prepare/execute и прочее -- таки с (), ибо опциональные аргументы и вообще.
[11:24:55] serp256 вышел(а) из комнаты
[11:25:00] serp256 вошёл(а) в комнату
[11:35:05] ftrvxmtrx вышел(а) из комнаты
[11:51:46] komar вышел(а) из комнаты
[11:53:18] ermine вошёл(а) в комнату
[11:58:09] arhibot вошёл(а) в комнату
[11:59:07] serp256 вышел(а) из комнаты
[11:59:11] serp256 вошёл(а) в комнату
[12:05:00] arhibot вышел(а) из комнаты: Replaced by new connection
[12:05:01] arhibot вошёл(а) в комнату
[12:08:30] arhibot вышел(а) из комнаты: Replaced by new connection
[12:08:32] arhibot вошёл(а) в комнату
[12:46:30] Kakadu вошёл(а) в комнату
[13:23:24] komar вошёл(а) в комнату
[13:26:06] <gds> есть у меня класс connection, однако из-за заморочек, связанных с наследованием (уже не помню, каких), я его обозвал connection_gen и дал ему в качестве параметра класс statement (т.е. connection_gen#prepare : ... -> statement).  Теперь хочу параметризовать statement типом "sql-значение" (чтобы был параметр sql_t = [= `Null | `String of string | `Int of int ... ] для типизированного случая, и параметр string для случая, когда нужна СКОРАСТЬ!111  ну и гибкость -- вдруг появится что-то неподдерживаемое в бд, можно на уровне строк разбирать).  Но теперь, если statement параметризованный, то я не могу передать его самого как параметр для connection_gen.
Можно, конечно, connection тоже параметризовать типом sql_t / string, но кривовато.  Можно передавать в качестве параметра для connection два типа -- statement [sql_t] и statement [string], тоже кривовато.
А всё -- из-за того, что нельзя передать в качестве параметра "неприменённый тип" (т.е. тип, содержащий "лямбду по типу" -- например, просто "list").
В общем, не знаю, что делать.
[13:51:15] ftrvxmtrx вошёл(а) в комнату
[13:59:26] Kakadu вышел(а) из комнаты
[14:00:21] <gds> Цель -- сделать опциональные аргументы в двух методах двух классов, да так, чтобы наследовалось нормально.  Пробую: http://pastebin.com/23QHFKRk  -- но не понимаю я эти опциональные аргументы.
Если же заменить определение на "w = object method virtual e : ~a : int -> unit end", то потом, при наследовании от w, я не могу сделать так, чтобы этот метод принимал опциональные аргументы (пусть и с заданными начальными значениями), хочет только labelled.
[14:07:12] <ermine> галл еще дважды потестил своей мейллист оазиса, интересно, к чему это
[14:08:21] <ermine> gds: почитал про пакрат?
[14:17:58] <gds> ermine: не особо вдумчиво прочитал.  сейчас времени мало, реляционочки сейчас сильно приоритетнее.  А они не выходють, как видишь по чятику.
[14:20:56] <ermine> gds: реляционки или классы?
[14:21:46] <ermine> или какие-то еще ветряные мельницы
[14:22:16] <gds> пытаюсь сделать слой наподобие dbi.  Чтобы удобненько было.
[14:24:09] ygrek вышел(а) из комнаты
[14:24:12] ygrek вошёл(а) в комнату
[14:29:03] <ermine> gds: ты читал блог jake donham про классы? я правда не дочитала, но там открывалась какая-то жуткая тайна
[14:30:06] <gds> про объекты и их представление -- читал, но тайн особо не видел.
[14:30:26] <gds> или вот ещё хрень про опциональные аргументы: http://pastebin.com/6bVACm7r -- несовместимый тип, в рот мне ноги.
[14:35:51] <ermine> судя по наличию pos, интерйес подогнан под sqlite
[14:36:42] <ermine> или ~bpos - это не то, о чем я подумала?
[14:37:13] <gds> bpos -- bindings positional (тип array sql_t), bnamed -- bindings named (тип list (string * sql_t)).  не подогнан -- тут я пытался максимально общее взять.  есть субд только с positional, есть только с named, такой и тип.
[14:38:46] <ermine> так стоило объединить в один label of варианты
[14:39:32] <gds> ?args:[Positional of array sql_t | Named of list (string * sql_t)] ?
[14:40:40] <gds> долго писать, требует скобок всегда (при передаче ~args:(выражение)), иногда бывают смешанные параметры -- и те, и другие.  (но это скорее изврат, но почему бы нет.)
[15:13:52] zert вошёл(а) в комнату
[15:14:22] <f[x]> опциональные аргументы по-моему имплицитно не подтипизируются
[15:14:50] <f[x]> вообще сделай два разных execute и всё
[15:18:46] <f[x]> ооо, ещё немножко чёрной магии из раздела "don't do it at home, kids" : http://caml.inria.fr/mantis/view.php?id=4732
[15:45:56] ygrek вышел(а) из комнаты
[15:48:38] <ermine> отдельный лексер сосиод, что подтверждается в этой ссылке
[15:49:30] <ermine> брали по контексту и не парились бы
[15:50:12] ermine думает, чего бы еще почитать на тему парсинга
[17:45:12] Kakadu вошёл(а) в комнату
[18:05:51] iNode вышел(а) из комнаты
[18:06:38] iNode вошёл(а) в комнату
[18:09:39] iNode вышел(а) из комнаты
[18:26:53] iNode вошёл(а) в комнату
[18:33:01] Kakadu вышел(а) из комнаты
[19:21:59] Kakadu вошёл(а) в комнату
[19:29:37] serp256 вышел(а) из комнаты
[19:41:39] ygrek вошёл(а) в комнату
[19:50:16] Kakadu вышел(а) из комнаты
[20:23:23] arhibot вышел(а) из комнаты
[21:01:35] ftrvxmtrx вышел(а) из комнаты
[21:07:04] komar вышел(а) из комнаты
[21:10:54] <ermine> слышали новость про домен haskell.org?
[21:11:02] <ermine> его увели
[21:13:16] <zert> ололо
[22:24:48] <rren> это им в наказание за б-гомерзкий редизайн
[22:30:56] Kakadu вошёл(а) в комнату
[22:44:56] ygrek вышел(а) из комнаты
[23:13:33] serp256 вошёл(а) в комнату
[23:34:24] Typhon вошёл(а) в комнату
[23:59:56] ftrvxmtrx вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!