[plt-scheme] On PLaneT packages and compatible upgrades

From: Dave Herman (dherman at ccs.neu.edu)
Date: Wed May 10 14:06:18 EDT 2006

> For version 1.1, I add `w' and `q':
> 
>  (module m mzscheme
>    (define x ...)
>    (define y ...)
>    (define z ...)
>    (define w ...)
>    (define q ...)
>    (provide x y z)
>    (provide-version (1 1) w q))

This is exactly the solution proposed by Waldemar Horwat for JavaScript 
2.0, using the proposed "namespaces" facility:

     http://ll1.ai.mit.edu/horwat.ppt

I wasn't crazy about it in his proposal, because it starts irrevocably 
polluting the code with a spaghetti of version information, but at least 
in your proposal, you only accumulate this version information until the 
next major release. Once you bump the major version, you can clear out 
all the provide-versions.

Dave


Posted on the users mailing list.