[racket] Poll: Does anybody besides Doug use 'plot'?

From: Neil Van Dyke (neil at neilvandyke.org)
Date: Sun Oct 2 12:51:14 EDT 2011

> On Oct 2, 2011, at 12:07 AM, Neil Toronto wrote:
>> A tad more seriously, if we had a death date for the old one, I could put it in the library name. You'd have to put
>>     (require plot/supported-until-2013-01-01)
> I really like this one a lot. -- Matthias

So long as nobody thinks that this is necessarily a best practice 
for breaking API in the future, IMHO.

In the case of "plot", the API breaks at the time users have to change 
their "require" form to include this expiration date (and then the API 
may break a *second* time, on or after that date).

I'd see this as not a best practice, but a one-time deal: for the 
special case of the "plot" library that few people use, and which 
library we really want to get rid of because of the C code, combined 
with a desire to steal the old API's "(require plot)" for the new API.

In the future, we all will have had the benefit of the "plot" 
experience, which teaches us that API breakage will cause a huge amount 
of discussion, which costs the developers time/energy/morale before we 
even get to what API breakage costs users.  So we will consider breaking 
API only when the win is so big that we are willing to endure 
discussion.  I love that discussion can be used not only for 
collaborative design and problem-solving, but also as itself a painful 
stick to discourage misbehavior.

By all means, just move forward on getting the new "plot" goodness to 
the users, however the API migration is done.  Learning experience has 
been achieved.


Posted on the users mailing list.