On Jan 15, 2009, at 9:31 AM, John Goerzen wrote:
By "pure" do you mean "containing python code only"?  I'm looking
through a few, and:

Search for "pure python mysql" or "pure python postgresql" and you'll see at least two implementations. In addition, there are plenty of pure Python databases for those who want and are able to stay strictly within Python.

I don't think it's a bold assertion. If I'm using a Haskell library that wraps a C library, and find a bug in it, my chances of tracking down the bug in C code and submitting a patch to whatever group maintains it are exactly zero. On the other hand, if it's a pure Haskell library, I'll at

Why?

I'm tired of C. I'm not going to use any unpaid time writing or maintaining anything written in C.

I assume if C were my favorite language, I'd be hanging around c-cafe instead of haskell-cafe. :-)

You have to balance that against the chances of there being bugs in
code that is used by far fewer people.

That's true.

It's a lot of wheel reinvention to try to re-implement a database
protocol in n languages instead of do it in 1 and bind to it
everywhere else.

Why is wheel reinvention a bad thing? A combination of cooperation and competition is best for every endeavor. We have lots of companies in the business of making tires, each trying to outdo the other, but for any given company, they are all united behind the goal of producing the best possible tire. The consumers benefit.

AFAIK, the only language where that sort of wheel reinvention is
popular is Java.  But then Java seems to encourage wheel reinvention
anyhow ;-)

The Java reinventions look and feel like Java, because they're native implementations. This is even more important in Haskell where the differences between Haskell and C is about as large as you can get.

Regards,

John


_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to