On Tue, Jun 04, 2013 at 11:23:16PM +0200, Peter Simons wrote: > > On Tue, Jun 04, 2013 at 04:01:37PM +0200, Peter Simons wrote: > >> > If you're representing text, use 'text'. > >> > If you're representing a string of bytes, use 'bytestring'. > >> > If you want an "array" of values, think c++ and use 'vector'. > >> > >> the problem is that all those packages implement the exact same data > >> type from scratch, instead of re-using an implementation of a > >> general-purpose array internally. That is hardly desirable, nor is it > >> necessary. > > > > Just to clarify for those on the sidelines, the issue is duplication of > > implementation details, rather than duplication of functionality? > > I am not sure what the terms "duplication of implementation details" and > "duplication of functionality" mean in this context. Could you please > explain how these two concepts differ in your opinion?
Hi Peter, When I say "duplication of implementation details" I believe I mean something like your implementing "the exact same data type from scratch". By "duplication of functionality", on the other hand, I mean providing two libraries with similar APIs which essentially serve the same purpose. I believe you are suggesting that there is redundancy in the implementation details of these libraries, not in the APIs they expose. Then again, I was just trying to understand the discussion at hand. I don't have an opinion on it. Tom _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe