Home
Objective Caml
ocaml@conference.jabber.ru
Пятница, 3 июля 2009< ^ >
f[x] установил(а) тему: Камло -- http://caml.inria.fr | chatlog -- http://chatlogs.jabber.ru/ocaml@conference.jabber.ru/ (старые -- http://ocaml.seajelly.org/ ) | верблюды грязи не боятся!
Конфигурация комнаты

GMT+4
[00:04:18] <gds> в качестве развлечения было бы полезно переписать myfunc с помощью fold_dir. Или даже в myfunc фильтр на ".c" поставить, чтобы лишних значений не создавать -- окамл таки энергичный язык, не ленивый, а свёртка уже готовая, так почему бы и нет.
[00:05:29] gds away где-то на 9 часов.
[00:08:52] DimitryKakadu вышел(а) из комнаты
[00:42:37] ygrek вышел(а) из комнаты
[00:49:44] sceptic вышел(а) из комнаты
[01:21:19] lelf вышел(а) из комнаты
[07:29:11] sceptic вошёл(а) в комнату
[08:01:20] gds вышел(а) из комнаты
[08:28:51] sceptic вышел(а) из комнаты
[08:29:37] sceptic вошёл(а) в комнату
[08:56:38] gds вошёл(а) в комнату
[09:09:29] john вошёл(а) в комнату
[09:12:39] DimitryKakadu вошёл(а) в комнату
[10:04:57] Typhon вошёл(а) в комнату
[10:08:02] DimitryKakadu вышел(а) из комнаты
[11:19:51] sceptic вышел(а) из комнаты
[11:32:42] sceptic вошёл(а) в комнату
[12:18:48] sceptic вышел(а) из комнаты
[12:23:10] sceptic вошёл(а) в комнату
[12:29:54] ygrek вошёл(а) в комнату
[12:58:27] ygrek вышел(а) из комнаты
[13:11:52] john вышел(а) из комнаты
[13:21:21] Kakadu вошёл(а) в комнату
[13:40:06] <gds> чую, скоро придётся лексить юникод. ulex -- это как ocamllex, только с Ulexing вместо lexing и с препроцессором вместо .mll -> .ml, или другие различия тоже есть?
[13:40:33] <gds> (ну, понятное дело, синтаксис тоже чуть разный -- lexer вместо parse, let вместо rule)
[13:44:06] ygrek вошёл(а) в комнату
[13:47:58] <ermine> gds: все верно
[13:48:39] <ermine> не parse, а rule кажись :)
[13:55:29] <gds> rule -> let, parse -> lexer? ну да это мелочи. интересно, нет ли более концептуальных различий. ну, там, "регекспы", их интерпретация, все дела.
[13:57:44] <ermine> посмотри в ридми ulex'a
[13:57:52] <ermine> там все написано
[13:58:00] <gds> понял.
[14:03:01] <gds> а вот ещё интересно. пока вырисовываются такие лексические правила, что текущий символ может иметь разное значение в зависимости от следующего символа. правила весьма простые, но они есть. если попробовать отлексить, допустим, 'a' 'b' vs 'a' 'c', то в обоих случаях второй символ тоже будет съеден, чего мне хочется избежать, так как хочу возвращать значение, соответствующее только текущему символу.
по идее, самое прямое решение -- прикрутить парсер поверх. или есть варианты лучше?
[14:04:32] <ermine> гы гы
[14:06:25] <gds> да ваще лол
[14:06:37] <ermine> но в твоем случае все просто.
[14:08:52] <ermine> а вот если контекст был бы такой хитрый, а не стоящим сразу после 'a', то действительно все плохо было бы, потому что твоя задача - написать лексер, который на выход рожает токены, не более того
[14:10:15] <ermine> вот если бы ты спросил как в зависимости от контекста считать оставшийся кусок строки целым отдельным токеном, причем контекст задает парсер, я бы просто пожала плечами
[14:11:39] <gds> да, с этим делом было бы риальни хитро.
Но у меня всё просто. Парсером-то я точно решу, но думаю вот, нет ли смысла решить это дело лексером.
[14:13:47] <ermine> ну есть же rollback, чтобы не терять символ
[14:13:53] <ermine> он и в Lexing вроде есть
[14:15:15] <gds> то есть, делать 'a' 'b' -> rollback lexbuf; use_lexer_for_a_b lexbuf ?
[14:50:07] <ermine> нет
[14:50:22] <ermine> lexer 'a' -> lexer 'b' -> rollback
[14:52:52] <gds> ага, идею понял, прикольно. Если не замучаюсь, лексером буду.
[15:05:57] Kakadu вышел(а) из комнаты: I'm happy Miranda IM user. Get it at http://miranda-im.org/.
[15:51:02] ygrek вышел(а) из комнаты
[15:59:02] sceptic вышел(а) из комнаты
[17:30:31] gds вышел(а) из комнаты
[17:52:07] john вошёл(а) в комнату
[18:23:26] gds вошёл(а) в комнату
[18:24:45] john вышел(а) из комнаты
[18:39:03] sceptic вошёл(а) в комнату
[19:49:53] gds вышел(а) из комнаты: Replaced by new connection
[19:49:54] gds вошёл(а) в комнату
[19:55:09] ermine вышел(а) из комнаты
[19:55:12] ermine вошёл(а) в комнату
[19:58:41] sceptic вышел(а) из комнаты
[19:58:43] ermine вышел(а) из комнаты
[19:58:45] ermine вошёл(а) в комнату
[20:15:05] f[x] вышел(а) из комнаты: Computer went to sleep
[20:19:08] ermine вышел(а) из комнаты
[20:19:29] ermine вошёл(а) в комнату
[20:20:10] sceptic вошёл(а) в комнату
[21:34:57] Typhon вышел(а) из комнаты
[22:29:21] ygrek вошёл(а) в комнату
[23:49:41] sceptic вышел(а) из комнаты
[23:52:01] sceptic вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!