On Wed, 29 Jun 2005, Sven Moritz Hallberg <[EMAIL PROTECTED]> wrote: > Am 29. Jun 2005 um 11.03 Uhr schrieb Simon Marlow: > >> On 28 June 2005 14:11, Bulat Ziganshin wrote: >> >>> [...] how about using Pesco's library versioning scheme? (see >>> http://www.haskell.org/tmrwiki/EternalCompatibilityInTheory) >> >> I've read that article, and I think it's an interesting idea. I can't >> disagree with the arguments put forward, but somehow, the cure seems a >> bit painful. > > [...] > > What am I missing?
I agree that the benefits of your scheme are desirable. However, in some sense the method amounts to manual version control. We have nice tools that take care of version control, and I wouldn't want to do that by hand. As a simple (but perhaps contrived) example, if a project consists of 50 modules, then after on average 10 changes per module the project will consist of at least 500 modules. If a feature from the first version of some module turned out to be buggy, and all versions needed to be fixed, then ~10 modules might need to be split into two (as per your A_3_9 and A_4_1 example). With a revision control system it should suffice to patch one module, and then users could choose whether to include that patch or not. (Of course, a basic revision control system has other drawbacks compared to your scheme.) -- /NAD _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe