Chris, in discussions about "compatibility" , people always missing to mention one little thing: users can always choose to not upgrade their projects and keep using older releases. Now, don't you think that it would be strange if new release of system will function exactly as old one, so users can run their project(s) without changing even single line of code? This is possible only if new system(s) should be same thing but with extra functionality. And that will mean that development model would be "never change anything, but add things on top".. But as Markus mentioned, this is completely inappropriate for "system development". I think a more appropriate term for such model would be "system add-ons development". And it is clearly not what we want to do. Also, if there's no changes for your project, what is the point to migrate your project to newer version of system? There will be no win for you: your software will not run faster, will consume same amount of resources, and it is not using new features which were added. So, why just not keep using old release? The software has to evolve, and evolution means changes. And so, if you wanna benefit from system improvements, you'll have to make your hands dirty and do some changes in your code to fit with new system. This is a price you pay for having better system. And there's no escape from that. On 14 December 2012 23:42, Chris Muller <ma.chris.m@gmail.com> wrote:
- the consensus is that FileSystem is a nice API - the consensus is that FileDirectory is/was ugly
Hence, you echo my original statement from the other thread. I wrote:
... While someone in the Pharo community said FileSystem over FileDirectory is "huge", I see it as an incremental API change, and close to being a matter of preference.
And you don't want to switch to it ? Or you want to keep the old API and not force the switch on users ?
Both. Because, while FileSystem is a cleaner design, the question posed was whether it is _worth_ breaking so many legacy packages and the promise of O.T. for "a nice API". That's when dramatic attempts to intensify the contrast between the two came out but with no concrete examples we arrived full-circle back to the original question.
An acceptable compromise for me for putting it Squeak would be a FileDirectory wrapper that can pass its own test suite, which is precisely what Pharo did!
-- Best regards, Igor Stasenko.