Boost logo

Boost :

From: Jim Apple (japple_at_[hidden])
Date: 2004-02-17 17:08:21


Thanks for the thorough response!

There (is one)/(are some) parts of the library that I feel are ripe for
inclusion in boost. Specifically:

> Lists
> List data structures. Useful in the functional sense (cons() and
> tail() are O(1)). Provides one easy way to do lazy evaluation.
> List Lib Functions
> Lots of functoids that work on lists.

Any implementation details could be put into a boost::lazy_list::detail
namespace, perhaps, and then only the lazy_list hackers have to be
really happy with it.

> (Perhaps I could/should start seven
> separate email threads--one for each category. Good/bad idea, anyone?)

Well, I think it's a great idea! :-)

>>I'm concerned about documentation that says "Look at the Haskell Report."
>
> Concerned from the "Brian is too lazy to provide ample documentation"
> standpoint, or something more?

I could see potential problems. There are subtle differences of things
that are easily expressible in haskell that are trickier in C++. I
looked up all of the fc++-provided prelude functions, and one of them
has a type signature that uses an arbitrary monad m.

There are lots of people completely unfamiliar with haskell syntax.
Someone might ask if any of the functions has side effects.

> Regarding your comments about names of various entities: I am willing to
> change names if people find other names more attractive.

I suggest lazy_list for fcpp::list.

I also asked

"Could the functoids with arity attached to their names have that
removed, like boost::function? "

which is more a technical question. Is it possible for curryN to be just
curry?

Jim


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk