Home
Objective Caml
ocaml@conference.jabber.ru
Четверг, 20 июня 2013< ^ >
f[x] установил(а) тему: OCaml / ОКэмл / Камль -- http://ocaml.org/ | Камло - http://camlunity.ru/ | Верблюды грязи не боятся! | release crap, enjoy NIH | репортьте баги официальным дилерам | ocaml мёртв и тормозит, move on | stdlib only? - ССЗБ | Fight FUD with fire | Мойте руки перед чатом | KEEP CAML AND CURRY ON | F#, Coq - де-факто онтопик
Конфигурация комнаты
Участники комнаты

GMT+4
[00:03:08] <gds> bobry: реализация будет всяко различной.  Поэтому не очень много смысла, как мне кажется, в том, чтобы интерфейсы делать "почти одинаковыми".  Разве что схему именования выбрать, чтобы было удобно выписывать сигнатуры модулей.  Конечно, можно функторы использовать для представления сигнатур "дискретное", "непрерывное", .., а им уже подсовывать разные типы данных -- float, array float.  Но продолбаешься дольше, думается.
Абстрактные типы наверное не помогут -- у тебя то Mean, то MeanOpt, и вообще, они все отличаются.
Про размерности -- на чистом окамле сложно будет.  Либо camlp4, либо coq (да и то, размерности только в коде, на нём написанном, будут под контролем), либо ональные извращения.  Какие -- сходу не скажу, и не уверен, что будет польза.
[00:03:18] bobry вышел(а) из комнаты
[00:04:37] Kakadu вышел(а) из комнаты
[00:08:08] ermine вышел(а) из комнаты
[00:23:35] bobry вошёл(а) в комнату
[00:25:43] bobry вышел(а) из комнаты
[00:26:42] bobry вошёл(а) в комнату
[00:38:01] <bobry> gds: спасибо, буду пробовать
[00:38:26] bobry вышел(а) из комнаты
[00:52:50] UncleVasya вышел(а) из комнаты
[03:14:57] gds вышел(а) из комнаты: Replaced by new connection
[03:14:58] gds вошёл(а) в комнату
[05:47:11] f[x] вошёл(а) в комнату
[06:18:52] <f[x]> http://caml.inria.fr/mantis/view.php?id=5855 <- посмотрите на этих ляшушатников
[07:17:49] <gds> посмотрел, пичалька.
[07:41:34] avkarpich вошёл(а) в комнату
[08:31:23] f[x] вышел(а) из комнаты
[10:31:12] ermine вошёл(а) в комнату
[10:45:29] zinid вошёл(а) в комнату
[11:00:15] ftrvxmtrx вышел(а) из комнаты
[11:12:28] tilarids вышел(а) из комнаты
[11:13:07] tilarids вошёл(а) в комнату
[11:24:18] f[x] вошёл(а) в комнату
[11:32:57] ftrvxmtrx вошёл(а) в комнату
[11:40:21] ftrvxmtrx вышел(а) из комнаты
[11:41:25] ftrvxmtrx вошёл(а) в комнату
[12:25:07] Kakadu вошёл(а) в комнату
[13:14:12] tilarids вышел(а) из комнаты: Machine going to sleep
[13:50:39] tilarids вошёл(а) в комнату
[14:52:10] avkarpich вышел(а) из комнаты
[15:34:05] f[x] вышел(а) из комнаты
[17:01:43] bobry вошёл(а) в комнату
[17:02:08] <bobry> господа, а подскажите что тут не так с подстановкой типа в сигнатуру http://paste.in.ua/8380/
[17:12:25] <ADEpt> bobry: There are a number of restrictions: [...] definition must be either another type constructor (with identical type parameters), or a module path.
[17:12:39] <ADEpt> bobry: пункт 7.16 из http://caml.inria.fr/pub/docs/manual-ocaml/manual021.html
[17:14:40] <bobry> ADEpt: ах вот оно что, спасибо
[17:15:43] <ADEpt> bobry: а во втором случае у тебя t не параметрический. И хоть внутри это тот же float array, но ограничение "не стреляет"
[17:29:16] bobry вышел(а) из комнаты
[17:29:45] bobry вошёл(а) в комнату
[17:29:48] bobry вышел(а) из комнаты
[18:36:44] komar вышел(а) из комнаты: Replaced by new connection
[18:36:44] komar вошёл(а) в комнату
[18:39:53] zinid вышел(а) из комнаты
[18:50:30] ftrvxmtrx вышел(а) из комнаты
[18:56:05] f[x] вошёл(а) в комнату
[19:05:43] komar вышел(а) из комнаты: Replaced by new connection
[19:05:43] komar вошёл(а) в комнату
[19:17:39] Kakadu вышел(а) из комнаты
[19:45:30] <f[x]> http://roscidus.com/blog/blog/2013/06/20/replacing-python-round-2/
[20:04:20] <gds> > Often an error reported at a particular line means you used “;” rather than “;;” 20 or 30 lines earlier.
ну, человек хоть предупредил, что нуб.  Ему простительно такую срань писать.
[20:05:25] <f[x]> вообще как для нуба я просто в восхищении от "проникания" в тему
[20:05:49] <f[x]> т.е. во всех классических косяках сам разобрался, остались только кое-какие мелочи
[20:05:53] <f[x]> я сейчас в почту отписал
[20:06:54] <gds> > The syntax tends to emphasise the body of functions while minimising the signature
эээ.  let get_source (b : ty1) : ty2 = ...
или
let get_source
: ty1 -> ty2
=
  fun b ->
    ...
[20:07:06] <f[x]> ужс ужс
[20:07:14] <f[x]> type throwback в редакторе наше всё
[20:07:26] <f[x]> и api доки для либ
[20:08:16] <gds> > OCaml does support objects if you want them, but the normal style seems to be to avoid them.
кадастр ему надо дать, там я занялся этим вопросом вполне так.  Но, на самом деле, не надо ему кадастра.
[20:09:18] <gds> match + begin/end -- классическая шняга.
[20:10:12] <f[x]> yes sir
[20:10:34] <gds> я не сир, я кэп1111
[20:10:54] <gds> > > a $ b $ c d means a (b (c d)) (without them it means ((a b) c ) d). It helps to avoid having lots of close brackets.
вот это аргументищще.
[20:11:10] <gds> ладно, затыкаюсь к чорту.
[20:12:33] tilarids вышел(а) из комнаты: Machine going to sleep
[20:14:00] <gds> не, ну вообще да, человек в целом таки разобрался.  Энергичный!
[20:15:27] ftrvxmtrx вошёл(а) в комнату
[20:15:27] <f[x]> ещё и с обширным питон бэкграундом
[20:16:24] <gds> и среди пèтоньé бывают исключения.
[20:17:06] <f[x]> начинаешь прям верить в человечество
[20:18:39] komar вышел(а) из комнаты: Replaced by new connection
[20:18:39] komar вошёл(а) в комнату
[20:24:19] komar вышел(а) из комнаты: Logged out
[20:24:26] komar вошёл(а) в комнату
[20:25:08] <gds> ан нет, не затыкаюсь.
> as there’s no null coalescing operator in OCaml
ну проблема -- завернуть в лентяйку и нарисовать комбинатор.
[20:31:00] <gds> > abspath (and realpath) are missing from the standard library.
.. и накодил некроссплатформенно, вместо Filename.is_relative.
[20:35:58] <gds> > find function throws an exception if the key isn’t found
find_opt!111
[20:47:52] <f[x]> о, а вот это я упустил
[20:48:31] <gds> find_opt?  он там дальше пишет, что налепил враппер, так что ок.
[20:51:02] <f[x]> и abspath
[20:51:46] f[x] вышел(а) из комнаты
[21:07:37] <gds> f[x]: про null coalesce -- что-то такое: http://paste.in.ua/8384/
и вдобавок про "&" можно ему подсказать, если уж так скобки не нравятся.
[21:12:20] <gds> а про %< и @> ему знать не надо, ещё испугается.
[22:27:00] Kakadu вошёл(а) в комнату
[22:43:46] Typhon вышел(а) из комнаты
[23:17:00] ermine вышел(а) из комнаты
[23:33:09] <gds> кстати, по поводу option'ов.  Вообще, работу с ними вполне можно представить в виде манатки.  Но они в окамле не очень естественно выглядят, поэтому лучше заменить их (и их bind) на "стрелки Клейсли" и их композиции.  Если о чём-то говорит -- интересно было бы обсудить.  (может сталкивались с подобными вопросами, например?)
[23:47:49] UncleVasya вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!