Home
Objective Caml
ocaml@conference.jabber.ru
Суббота, 30 октября 2010< ^ >
ygrek установил(а) тему: Камль -- http://caml.inria.fr | Логи -- http://chatlogs.jabber.ru/ocaml@conference.jabber.ru/ | Верблюды грязи не боятся! | release crap | judge by commits, not comments | ocaml мёртв, move on
Конфигурация комнаты
Участники комнаты

GMT+4
[00:21:41] Typhon вошёл(а) в комнату
[00:22:45] <gds> myxomop87: что я делаю не так?
# type id = int;;
type id = int
# let (myid : id) = 123;;
val myid : id = 123
# Printf.printf "myid=%i\n" myid;;
myid=123
- : unit = ()
#
[00:23:02] <Typhon> +? всё ок
[00:23:19] <Typhon> * ? = ,
[00:25:57] <gds> да, + тоже ок.
[00:26:00] <Kakadu> моя проблема решилась. Оказалось что если просто добавить файл .ml и никому об этом не сказать, то собираться ничего не будет.
[00:26:23] Kakadu вышел(а) из комнаты
[00:26:31] Kakadu вошёл(а) в комнату
[00:26:50] Kakadu вышел(а) из комнаты
[00:32:58] <myxomop87> да, странно
[00:33:21] <myxomop87> у меня тоже работает в репл
[00:33:33] <myxomop87> значит в либе что-то намудрили
[00:35:28] <gds> в интерфейсе либы стоит точно type id = int?  или type id?  или type id = private int?
[00:50:43] komar вошёл(а) в комнату
[01:16:51] gds вышел(а) из комнаты
[01:43:47] zert вышел(а) из комнаты
[01:58:30] ermine вышел(а) из комнаты
[01:59:20] Typhon вышел(а) из комнаты
[02:28:36] <myxomop87> стоит точно type id = int, точнее type planet_id = int
[02:36:03] myxomop87 вышел(а) из комнаты
[03:09:12] abiogenesis вошёл(а) в комнату
[05:00:30] abiogenesis вышел(а) из комнаты
[09:55:13] Kakadu вошёл(а) в комнату
[09:55:39] Kakadu вышел(а) из комнаты
[10:21:21] gds вошёл(а) в комнату
[10:57:48] ygrek вошёл(а) в комнату
[10:58:24] ygrek вышел(а) из комнаты
[10:59:22] ygrek вошёл(а) в комнату
[11:00:00] ygrek вышел(а) из комнаты
[11:00:35] ygrek вошёл(а) в комнату
[11:01:13] ygrek вышел(а) из комнаты
[11:01:48] ygrek вошёл(а) в комнату
[11:02:04] ygrek вышел(а) из комнаты
[11:06:12] ygrek вошёл(а) в комнату
[11:06:28] ygrek вышел(а) из комнаты
[11:07:07] ygrek вошёл(а) в комнату
[11:07:36] ygrek вышел(а) из комнаты
[11:09:06] ygrek вошёл(а) в комнату
[11:28:26] ygrek вышел(а) из комнаты
[11:28:48] ygrek вошёл(а) в комнату
[11:28:49] ygrek вышел(а) из комнаты
[11:28:53] ygrek вошёл(а) в комнату
[11:34:01] <ygrek> gds: а ты после того как опции в mpd менял каталог пересканировал?
[11:34:54] ygrek помнится с этим достаточно задолбался, половина файлов в cp1251 половина в koi8-r(!)
[11:34:59] <gds> да, иначе оно ругалось.  убивал mpd.db, запускал, удостоверялся в создании mpd.db, навсяк перезапускал mpd, и уже смотрел в ario.
[11:35:02] <ygrek> сконвертил всё в utf8
[11:35:18] <ygrek> ну может тогда виндоспецифичные баги., опенсорс же
[11:36:17] <gds> да вообще непонятно.  С другой стороны, даже не знаю, если бы хотел конвертить теги, взял бы amarok какой-нибудь.
[11:37:28] myxomop87 вошёл(а) в комнату
[11:38:06] arhibot вошёл(а) в комнату
[11:40:44] ermine вошёл(а) в комнату
[11:48:22] arhibot вышел(а) из комнаты
[11:48:26] arhibot вошёл(а) в комнату
[12:17:06] arhibot вышел(а) из комнаты
[12:27:36] Kakadu вошёл(а) в комнату
[12:36:33] <Kakadu> Есть идеи о том, как можно приминить тайпкласс Show для парматрических типов?
[12:37:27] <Kakadu> если писать расширение синтаксиса, то наверное что-то вроде
type t = 'a list deriving (Show where ('a deriving Show))
[12:38:03] <Kakadu> в нужном мне коде кажется, что параметрически типы встречаются конечное число раз и можно дописать руками нужный код...
[12:38:07] arhibot вошёл(а) в комнату
[12:53:02] myxomop87 вышел(а) из комнаты
[12:54:05] <ygrek> 'a deriving Show ?
[12:54:13] <ygrek> как это будет работать?
[13:03:43] arhibot вышел(а) из комнаты
[13:07:06] myxomop87 вошёл(а) в комнату
[13:19:20] Kakadu вышел(а) из комнаты
[13:35:20] myxomop87 вышел(а) из комнаты
[13:52:18] ygrek вышел(а) из комнаты: Replaced by new connection
[13:52:19] ygrek вошёл(а) в комнату
[14:57:59] fffetish вошёл(а) в комнату
[15:18:58] fffetish вышел(а) из комнаты: Logged out
[15:36:58] myxomop87 вошёл(а) в комнату
[16:08:43] serp256 вошёл(а) в комнату
[16:09:01] serp256 вышел(а) из комнаты
[17:04:07] Kakadu вошёл(а) в комнату
[17:04:11] Typhon вошёл(а) в комнату
[17:42:14] serp256 вошёл(а) в комнату
[17:44:10] serp256 вышел(а) из комнаты
[17:57:46] SerP вошёл(а) в комнату
[17:58:05] SerP вышел(а) из комнаты
[18:09:21] zert вошёл(а) в комнату
[18:51:12] Typhon вышел(а) из комнаты
[19:04:37] ygrek вышел(а) из комнаты
[19:05:44] serp256 вошёл(а) в комнату
[19:05:53] serp256 вышел(а) из комнаты
[19:16:06] zert вышел(а) из комнаты
[19:16:09] serp256 вошёл(а) в комнату
[19:16:15] serp256 вышел(а) из комнаты
[19:16:41] zert вошёл(а) в комнату
[19:18:30] ygrek вошёл(а) в комнату
[20:02:54] serp256 вошёл(а) в комнату
[20:03:04] serp256 вышел(а) из комнаты
[20:46:12] ygrek пиарит camltemplate в irc
[21:05:30] serp256 вошёл(а) в комнату
[21:05:34] serp256 вышел(а) из комнаты
[21:41:05] serp256 вошёл(а) в комнату
[21:41:13] serp256 вышел(а) из комнаты
[21:48:04] myxomop87 вышел(а) из комнаты
[21:56:22] myxomop87 вошёл(а) в комнату
[21:56:57] ermine раздумывает, чем в camlimages рисовать кружочки и квадратики
[21:59:28] <ermine> вот бяда так бяда... кружочки и квадратики - только в lablgtk2
[22:01:58] SerP вошёл(а) в комнату
[22:02:19] SerP вышел(а) из комнаты
[22:27:29] Typhon вошёл(а) в комнату
[23:10:18] <ermine> а где есть Random.int min max?
[23:11:39] <zert> а умножить и прибавить? не?
[23:11:54] Typhon вышел(а) из комнаты: Replaced by new connection
[23:11:57] Typhon вошёл(а) в комнату
[23:12:26] <ermine> как-то сложновато
[23:13:28] <ermine> да и random 1 это не то же самое что random 1 * 100
[23:13:43] <ermine> если надо random (10, 100000)
[23:14:09] <ermine> и вообще в математике я не рублю!
[23:14:32] <zert> Random.int min max = (Random.int (max - min)) + min
[23:15:51] <ermine> хм
[23:16:25] <zert> тебе ж просто диапазон надо сдвинуть
[23:16:35] <zert> по дефолту он от нуля начинается, а тебе надо от min
[23:16:45] <zert> поэтому прибавляешь min
[23:17:08] <zert> и считаешь по ширине диапазона (max - min)
[23:18:38] <ermine> я вот тут так опробовала интервал (5, 6) и ни разу не добилась чтобы оно показало 6
[23:18:41] <ermine> :)
[23:19:28] ygrek вышел(а) из комнаты: Replaced by new connection
[23:19:31] ygrek вошёл(а) в комнату
[23:22:20] <zert> а оно граничные значения показывает?
[23:23:22] <zert> мда, он вообще какой-то палёный
[23:23:50] <ermine> ну там сид хреновый
[23:24:04] <zert> не кажет он максимальное значение
[23:24:32] <zert> (** [Random.int bound] returns a random integer between 0 (inclusive)
     and [bound] (exclusive).  [bound] must be greater than 0 and less
     than 2{^30}. *)
[23:24:57] <zert> плюсуй ещё
[23:25:27] <ermine> ыгы
[23:25:54] <gds> мда, если к max_int приплюсовать 1, то как раз min_int и получится.  И, кажется, тут будет засада.
[23:26:43] <zert> незачем с такими числами работать
[23:28:39] arhibot вошёл(а) в комнату
[23:28:41] <ermine> с плюсодин теперь показывает 5 либо 6!
[23:30:18] <zert> а ты куда привавила?
[23:30:27] <zert> надо диапазон расширить, а сдвиг оставить
[23:31:20] <komar> Вот вы мне лучше расскажите, как по-человечески сгенерировать случайный Big_int в пределах [n..m]
[23:31:43] <ermine> внутрь скобок
[23:32:28] <gds> komar: вот ты про просто int сначала подумай, про задачку ermine.
[23:32:50] <komar> Я её уже решил.
[23:33:35] <komar> (** Unsigned int. Maximum for [max] is [max_int-1]! *)
let uint ?(min=0) ?(max=(max_int-1)) () =
  min + (Random.int (max - min + 1))
[23:33:46] <komar> Какую-то такую лажу писал.
[23:35:05] Kakadu вышел(а) из комнаты
[23:35:21] <komar> Есть еще такой весёлый костыль:
(** Signed int. *)
let int ?(min=(max_int*(-1))) ?(max=max_int) () =
  let min = Int64.of_int min in
  let max = Int64.of_int max in
  let i = Int64.add min (Random.int64 (Int64.succ (Int64.sub max min))) in
  Int64.to_int i
[23:36:31] <gds> через Int64 -- известно.  Но смотря какое распределение нужно.
[23:45:09] ygrek случайным делением пополам big_int генерит, правда у меня известно что границы степени двойки, так что это оправдано
[23:49:05] arhibot вышел(а) из комнаты: Replaced by new connection
[23:49:06] arhibot вошёл(а) в комнату
[23:51:14] <gds> в степенях двойки можно и рассчитывать на Random.bool.  Если авторы stdlib обещают кошерность, она передастся на результат генерации числа от 0 до (2^n)-1.
(я за капитана Очевидность, если чо.)
[23:56:21] myxomop87 вышел(а) из комнаты
[23:58:23] gds вышел(а) из комнаты
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!