
I don't understand what you mean by immutable and persistant, because
vector-heterogenous is both of those! It just uses a standard boxed vector
as the backend and does some unsafeCoercing to get the types to line up.
On Sun, Dec 1, 2013 at 7:40 PM, Sergey Bushnyak wrote: On 12/02/2013 03:58 AM, Mike Izbicki wrote: Author of vector-heterogenous here. I tried to design the package to meet
use cases like you describe, but fully admit that it's not perfect. It's
missing a lot of the functions you might expect from the regular vector
package (some of them are because I didn't need them, and some are because
the best implementation is not obvious), and syntax is still a little
awkward for my tastes. So if you have any ideas on improvements, I'd definitely be willing to
incorporate them. Or if you have a great idea for a complete redesign of
the package, I'd be happy to replace everything and let you take over. On Sun, Dec 1, 2013 at 12:11 PM, Sergey Bushnyak <
sergey.bushnyak@sigrlami.eu> wrote: Hello, everyone. I'm looking for reliable library or idea how to
implement heterogenous vector properly. It may seem odd, but I want
elements not only be different types but also functions, something like
that, pseudocode: hvec [a b (c->d) [a] ...] -- can be any type
let hvec = hvec [ "stuff" 5 getUrl [1, 4, 5]] So far I found *vector-heterogenous* package, but can't decide is it good
to build on or create something on my own. Any thoughts and ideas are appreciated. Thanks. _______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe Mike, thank you for quick response, nice to hear you open for
improvements. I'm also looking for this kind of package to be not only
heterogeneous, but immutable and persistent, which leads to higher level of
abstraction, something like *collection*. It will be nice to derive
different types from it, like hvector, hlist etc. I'm doing small research now, if I'll understand that it's better to build
upon your library or even reshape it I'll drop you an email.