Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[ANN] lazy.rb 0.1

0 views
Skip to first unread message

MenTaLguY

unread,
Nov 5, 2005, 7:39:55 PM11/5/05
to
Version 0.1 of lazy.rb is out, yet again offering lazy evaluation in
Ruby, but with a new version number.

Along with the spiffy new version number, you get:

* Lazy::DivergenceError, which is raised if a lazy computation diverges

* saner exception handling:

+ exceptions in lazy computations could have confusing
effects before; this version preserves the once-and-only-once
evaluation policy, even in the presence of exceptions

+ exceptions raised while evaluating lazy computations are wrapped
in Lazy::DivergenceError, so they can be distinguished from
exceptions raised by strict code (the original exception can be
obtained via Lazy::DivergenceError#reason)

* nearly seamless implicit evaluation, thanks to Pit Capitain

* a few more paragraphs of documentation

The web site (such as it is) is now here:

http://moonbase.rydia.net/software/lazy.rb/

The script is here:

http://moonbase.rydia.net/software/lazy.rb/0.1/lazy.rb

The documentation is here:

http://moonbase.rydia.net/software/lazy.rb/0.1/doc/

I have some questions, also.

* Would you all prefer "promise" or "lazy" for the promise-constructor
function?

* Should exceptions resulting from an explicit call to force() be
unwrapped from their Lazy::DivergenceError?

* Should the wrapper role of Lazy::DivergenceError be separated into
a different exception class?

-mental

signature.asc
0 new messages