пятница, 7 декабря 2012 г.

Just for Fun: «ленивые» и параллельные вычисления для Ruby

Набросал простенькую библиотеку, которая делает следующее: блок кода сохраняется в переменной или же выполняется в отдельном потоке, но при этом почти любое обращение к переменной ждет результата выполнения и в дальнейшем ведет себя уже как вычисленное значение.

Спасибо Ruby 1.9 за класс BasicObject — перекрывать всю массу методов Object я бы поленился.

Брать с ГитХаба — https://github.com/shikhalev/lazy.

upd: Проект перенесен, см. пост от 2013-04-18.

4 комментария:

  1. Еще бы в гем его запихнуть и было бы кошерно.

    ОтветитьУдалить
    Ответы
    1. А вообще, по хорошему такие вещи должны делаться на уровне языка, а не библиотеки.

      Удалить
    2. Вот с этим согласен. Вообще обидно, что в mri этого нет как и нет настоящего параллелизма, concurrency only.

      Удалить