Eugene Kirpichov (antilamer) wrote,
Eugene Kirpichov
antilamer

Category:

Новости

1.
Richard Bird, "Pearls of Functional Algorithm Design"
День, когда я подержу в руках эту книгу, будет самым счастливым днем в моей жизни.

2.
http://sebfisch.github.com/haskell-regexp/ и http://hackage.haskell.org/package/weighted-regexp
Дас ист фантастиш.
По ссылке есть потрясающая статья "A play on regular expressions". Хотел бы я когда-нибудь научиться так же круто писать статьи. Читается на одном дыхании, а описан в ней чрезвычайно остроумный, простой, быстрый (competitive with re2, constant-space, linear-time, без экспоненциального разбухания) и общий алгоритм мэтчинга регулярных выражений, использующий полукольца.

Мне показалось, что можно этот алгоритм сделать инкрементальным и параллельным, сопоставив каждому символу линейный (или пусть даже полилинейный) оператор, но похоже что нельзя.
Но вы все-таки посмотрите, вдруг можно. Круто же будет.

А потом еще в haskell-cafe какой-то чел быстренько написал с помощью LLVM маленький JIT-компилятор регулярных выражений по этому алгоритму, и у него получилось ваще быстро.

3.
C# крутой.

Придумал паттерн, эмулирующий джавские анонимные классы (правда код, в котором он пригодился, не пригодился). Пример:
interface IMouseListener {
    void OnMouseClick(Point p, int button);
    void OnMouseMove(Point from,Point to);
}

class MouseListener : IMouseListener {
    Action<Point,int>   MouseClick { private get; set; }
    Action<Point,Point> MouseMove  { private get; set; }

    void OnMouseClick(Point p,int button) { MouseClick(p,button); }
    void OnMouseMove(Point from,Point to) { MouseMove(from,to);   }
}

..
widget.AddMouseListener(new MouseListener {
    MouseClick = (p,button) => ...,
    MouseMove  = (from,to)  => ...
});


4.
В целях расширения своих знаний английского выучил монолог "To be or not to be" и теперь то и дело молодцевато щеголяю какими-нибудь словами или строчками оттуда - то в Skype status message, то еще где.
Subscribe

  • The Dataflow Model

    В VLDB вышла статья от нашей команды про унификацию streaming/batch, event-time processing, windowing, triggers, вот это все. The Dataflow Model: A…

  • Коллеги рассказали задачку

    Есть бесконечная река с пристанями, пронумерованными всеми целыми числами (..., -2, -1, 0, 1, 2, ...). По реке плывет корабль-призрак, из неизвестной…

  • Про подкаст DevZen

    С большой радостью, благодаря gliv, послушал подкаст http://devzen.ru/episode-0038, где обсуждался в т.ч. и Cloud Dataflow (начало…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 11 comments

  • The Dataflow Model

    В VLDB вышла статья от нашей команды про унификацию streaming/batch, event-time processing, windowing, triggers, вот это все. The Dataflow Model: A…

  • Коллеги рассказали задачку

    Есть бесконечная река с пристанями, пронумерованными всеми целыми числами (..., -2, -1, 0, 1, 2, ...). По реке плывет корабль-призрак, из неизвестной…

  • Про подкаст DevZen

    С большой радостью, благодаря gliv, послушал подкаст http://devzen.ru/episode-0038, где обсуждался в т.ч. и Cloud Dataflow (начало…