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

GMT+4
[00:18:46] gds вышел(а) из комнаты
[00:21:05] Kakadu вышел(а) из комнаты
[01:40:03] <ygrek> вах http://colinm.org/language_checklist.html
[01:41:19] <komar> Боян.
[01:42:30] <ygrek> слоупок
[01:43:23] ygrek левой ногой решил домашку по ml-class - ужасный примитивизм, я неприятно удивлён
[01:47:31] Typhon вышел(а) из комнаты
[01:51:22] Typhon вошёл(а) в комнату
[02:02:52] ygrek вышел(а) из комнаты
[02:10:27] Typhon вышел(а) из комнаты
[02:40:08] shaggie вышел(а) из комнаты
[03:52:43] letrec вошёл(а) в комнату
[05:58:39] letrec вышел(а) из комнаты
[10:02:28] letrec вошёл(а) в комнату
[10:09:34] ygrek вошёл(а) в комнату
[10:26:30] Kakadu вошёл(а) в комнату
[10:27:03] <Kakadu> ygrek: а что за домашка?
[11:57:37] ermine вошёл(а) в комнату
[12:02:59] gds вошёл(а) в комнату
[12:07:16] ygrek вышел(а) из комнаты
[12:42:30] Typhon вошёл(а) в комнату
[12:43:40] <Typhon> Kakadu: линейная регрессия, градиентный спуск
[12:43:51] <Typhon> а на ai-class, говорят, ещё скучнее всё
[12:53:44] arhibot вошёл(а) в комнату
[12:54:15] <arhibot> а причем тут ml?
[12:54:27] <arhibot> в универе у нас это было на численных методах
[13:03:47] <ermine> arhibot: хватит тупо быдлокодить! надо по-научному!
[13:04:21] <ermine> не поверю, что coq написал какой-то еле вылупившийся со школьной скамьи вьюноша с горящим взглядом
[13:04:52] <arhibot> ermine: я не понял связи
[13:04:58] letrec вышел(а) из комнаты
[13:05:54] <ermine> ну все математические науки тесно переплетены между собой, это еще зачем-то научились из преподавать сильно раздельно
[13:06:18] <ermine> с физикой такое плохо прокатывает
[13:06:52] <arhibot> Извини, но опять не понял твою фразу: "это еще зачем-то научились из преподавать сильно раздельно"
[13:07:24] <arhibot> а, там видимо их
[13:07:33] <ermine> молодой згачит ишшо
[13:08:11] <arhibot> Нет, просто твоя фраза не соответствует грамматике русского языка :)
[13:08:58] <ermine> это в каком месте?
[13:09:22] <arhibot> в какой я написал выше
[13:10:16] <Typhon> """Главное преимущество #ml_class <https://twitter.com/#!/search?q=%23ml_class> перед #ai_class <https://twitter.com/#!/search?q=%23ai_class> в том, что его можно ускорять до 1.2x или 1.5x. #timeManagement <https://twitter.com/#!/search?q=%23timeManagement>"""
[13:10:36] <arhibot> =))
[13:12:13] <ermine> arhibot: а, опечатка, там s/из/их/
[13:12:37] <arhibot> ну а как иначе?
[13:13:07] <arhibot> Всё в кучу и называть 'математикой'? :)
[13:13:16] <ermine> а говорят, фейман сумел физику в одной куче преподавать
[13:13:32] <ermine> ну может как-то с математикой можно
[13:14:25] <arhibot> А на прилавках книги будут тоже по Математике?
[13:16:46] <ermine> про прилавки не знаю
[13:17:25] arhibot вышел(а) из комнаты
[13:17:34] arhibot вошёл(а) в комнату
[13:40:51] komar вышел(а) из комнаты: Replaced by new connection
[13:40:52] komar вошёл(а) в комнату
[13:48:19] arhibot вышел(а) из комнаты
[14:01:36] letrec вошёл(а) в комнату
[14:38:30] letrec вышел(а) из комнаты
[15:07:03] ygrek вошёл(а) в комнату
[15:41:17] ygrek вышел(а) из комнаты: Replaced by new connection
[15:41:18] ygrek вошёл(а) в комнату
[15:53:30] <ermine> ура, начала получаться интерпретилка грамматики
[16:17:31] ygrek вышел(а) из комнаты
[16:45:37] <ermine> Kakadu: lablqt не собирается
[16:45:50] <ermine> тьфу
[16:45:56] <ermine> моя проблема с инклюдами
[16:50:01] <Kakadu> пичалька
[16:50:43] <ermine> добавлять инклюды из-за Gl/gl.h, который не часть qt
[16:51:09] <Kakadu> я могу выпилть QtOpenGL
[16:52:40] <ermine> ну если ты его еще не используешь, а планируешь использовать?
[16:52:55] <Kakadu> в кути есть классы, кторым жто надо
[16:52:57] <Kakadu> это*
[16:53:12] <ermine> тесты все так же падают в кору
[16:54:21] ermine задумалась над реализацией регэкспа + d интерпретилке
[16:56:07] <ermine> Kakadu: не выпиливай, я еще чонить придумаю
[16:56:40] <Kakadu> угу
[17:21:55] letrec вошёл(а) в комнату
[17:46:55] <ermine> облин, для регэкспов нужен lookahead, то бишь функция peek
[17:46:59] <ermine> жописец
[17:51:56] <gds> точно нужен?
[17:53:57] <ermine> а как иначе?
[17:54:02] <ermine> берем a+
[17:54:39] <ermine> дергаем символы из чанка, матчим, один не подошел, возвращаем результат из уже отмаченных, а этот неотматченный некуда девать
[17:54:51] <Kakadu> помогите пофиксить мэйкфайл: http://paste.in.ua/3202/
[17:55:45] <ermine> Kakadu: эт ниче, что я закоммичу скриптец build_freebsd.sh?
[17:56:46] <Kakadu> ermine: если запихать фрибсдшные настройки в build.ml слишком геморно, то ОК
[17:57:11] <gds> ermine: в следующее правило его девать, куда же ещё!
[17:57:32] <ermine> Kakadu: не, оно будет ставить три переменные окружения и дергать ocaml build.sh
[17:58:02] <ermine> gds: а следующее правило хочет чанк
[17:58:07] <gds> ermine: либо автоматы, либо closures, либо peek (в худшем случае peek_up_to_infinity).
[17:58:24] <Kakadu> ermine: зеленый свет
[17:58:43] <ermine> gds: можно нарастить тип чанка наподобие окамлевого стрима, типа дерева-списка, где сначала символы, а пото генератор символов, но круто ли это?
[17:59:00] <ermine> Kakadu: пасиб
[18:00:35] <gds> ermine: не круто.
[18:02:01] <ermine> подумаю, не первая и не последняя засада
[18:03:17] <ermine> gds: вызвать следующее правило и сунуть ему символ - это подходит для простейших случаев типа терминальных 'a' и lbfgfpjyjd [a-z],  
[18:03:32] <ermine> но стоит усложнить до группировок, как начинаются слезы
[18:03:59] <gds> если надо компилировать регекспы -- смотри манулы, их есть.
[18:04:06] <ermine> поскольку итераты, каждое правило возвращает результат в типах итерата
[18:06:43] <ermine> щас каждое простое конечное правило дергало чанк, надо попробовать иначе - дергуть чанк, потом попытаться пропихнуть в правила, так я вчера попыталась делать, но не склеилось с ходу
[18:09:33] <gds> ermine: если брать классические итераты -- там разве что LL(1) хорошо идёт, ну и его комбинации.  Дальше -- надо наворачивать.  Я думал навернуть -- может помнишь, обсуждали -- но мне на практике мало нужно было это.
Про "пропихнуть" -- имхо надо иначе.  Определиться с нужной грамматикой, а далее транслировать её куда надо.  Я бы взял ровно две полезные грамматики: LL(1) и GLR -- общие, тупые.  Первая маппится втупую на итераты, вторая -- втупую, но протаскивается список текущих состояний парсинга.
[18:15:07] <ermine> погуляла по квартире, поставила чайник - решение промелькнуло, надо пробовать
[18:16:47] <ermine> gds: я еще не дочитала ту книжку даже до LL, поэтому всяко оно сварится как пойдет, буду развивать по мере чтения крижки
[18:17:08] <ermine> тем более что идеи как парсить как раз возникли по ходу чтения
[18:30:09] <ermine> gds: по-моему в LL и GL альтернативы правил не упорядочены, а я возьму именно упорядоченные
[18:31:19] <ermine> Kakadu: заслала коммит
[18:33:22] <ermine> gds: а еще наподобие грамматикам PEG буду отмечать что сувать в следующий стрим как отпарсенное
[18:34:02] <ermine> A ::= [a-z]+ : String или как-то так
[18:34:36] <ermine> A ::= ([a-z]+ : String) во, еще лучше, группа правил
[18:35:27] <ermine> точнее это поклеп на аттрибутивную грамматику
[18:36:57] <ermine> PEG кстати хороши еще тем, что не выделяют лексер в отдельную область программинга
[20:07:49] ygrek вошёл(а) в комнату
[20:27:06] <gds> ermine: покайся!  peg -- уродство!
[20:29:37] <ermine> gds: пачму это?!
[20:30:22] <gds> явные приоритеты -- это сходу.  потом, как классический пример там приводят то, что мне нужно было бы парсить, потому я повесил метку и ага.
[20:31:09] <ermine> gds: явные приоритеты - это упорядоченные альтернативы?
[20:31:24] <gds> да.
[20:31:39] <ermine> ну имхо это правильно же, неча бегать по всем веткам и надеяться что где-то удача улыбнется
[20:31:52] <gds> мда, для моих целей они были приоритетами, ну и так тоже ок, альтернативы.
[20:32:15] <gds> не декларативно же!
[20:32:57] <ermine> gds: а камлевый match декларативен?
[20:33:08] <gds> нет конечно.
[20:33:23] <gds> но там удобство/неудобство понятны.
[20:33:26] <ermine> ну вот
[20:33:40] <ermine> пока не покажешь как декларативно - не поверю, что бывает декларативно
[20:33:51] <ermine> даже списки и те упорядоченные
[20:34:11] <gds> можно рассматривать их, не рассматривая порядок внутри них.
[20:34:31] <gds> не в тему, но ragel смотрела?
[20:34:46] <ermine> даже в ревизеде матчинки похожи на списки
[20:35:00] <ermine> в квадратных скобочках
[20:37:04] <gds> о, ты смотришь на синтаксис.
а со списком можно работать и так, как будто он не имеет порядка.
даже те же манатки -- поверх списка их можно соорудить далеко не одну.  мне наверное пригодится не только классическая, которая уважает порядок, но и что-то типа ListSet, которая порядок не уважает никак.
[20:40:38] <ermine> gds: условие if тоже упорядоченное или оно тоже не декларативное?
[20:43:33] letrec вышел(а) из комнаты
[21:06:08] <gds> ermine: if cond then e1 else e2 -- декларативное относительно cond.  хотя, если так опускаться, то грань между декларативным и даже функциональным размывается.
[21:31:29] shaggie вошёл(а) в комнату
[21:32:01] Typhon вышел(а) из комнаты
[21:38:53] shaggie вышел(а) из комнаты
[21:39:10] shaggie вошёл(а) в комнату
[22:01:01] <Kakadu> про lablqt
у меня такое ощущение что юзать какой-то сишный конструктор как камлевый просто не вариант. Смотрите:
class QObject {
QObject(int,float, что угодно) {}
QObject* parent() { ... }
};
а теперь смотрим на камлевый класс:
...
and qObject (x0:int) (x1:float) = object (self)
val mutable handler: [`qobject] obj = ...
initializer handler <- create_QObject_from_c_by_external_function ...
mehtod parent () = (* И что я здесь должен написать? Имхо вариантов нет как делать immediate object что есть совсем пиздец*)
end
[22:10:10] <gds> Kakadu: а что должен возвращать camlobj#parent()?
[22:10:38] <Kakadu> qObject
[22:10:56] <gds> какой конкретно / чей?
[22:11:44] <Kakadu> ну вызывать С++ метод parent() и получить QObject*, который потом как-то превратитьь в камлёвый qObject
[22:19:42] shaggie вышел(а) из комнаты
[22:32:59] <ermine> склепала регэасп "+", cкомпилилось, теперь можно и на боковую со чтивом
[22:33:25] <ermine> завтра, подозреваю, всё придется переписывать из-за ? и *
[22:35:46] ermine вышел(а) из комнаты
[23:01:56] Typhon вошёл(а) в комнату
[23:11:30] arhibot вошёл(а) в комнату
[23:12:22] arhibot вышел(а) из комнаты
[23:48:36] arhibot вошёл(а) в комнату
Powered by ejabberd Powered by Erlang Valid XHTML 1.0 Transitional Valid CSS!