Sebastian Fischer wrote:
Hello,

I wonder whether (and how) I should increase the version number of a library when the API does not change but the implementation gets more efficient.

I think it depends on how much more efficient. Constant factors of improvement are always nice, but they aren't (usually) earth shattering and so are probably only worth a D bump. Asymptotic improvements may very well be worth a C or B bump--- especially if they introduce the possibility of new bugs due to large code changes (i.e., you haven't _proven_ bug-for-bug compatibility).

But it also depends on the audience. For example, some libraries are defined as being "an efficient implementation of Foo" rather than being, say, an implementation of a particular data type or a particular high-level API for writing nice code. If your library is _defined_ by its performance characteristics, then a C or B bump would be appropriate since the complexity is effectively part of the API even though it isn't captured in the type system.

--
Live well,
~wren
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to