Did you consider moving "#lang mzscheme" out as well?<div><br></div><div>Robby<br><br>On Thursday, June 27, 2013, Sam Tobin-Hochstadt wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I've now pushed this set of changes, which pass all the racket tests<br>
and build the whole system cleanly. I think the next steps are:<br>
<br>
- Robby is going to move mzlib/contract.<br>
- Matthew is going to modify mzlib/compiler and mzlib/unit200.<br>
- Ryan is working on shrinking the db collection.<br>
- I posted about shrinking the `pkg` collection and working toward<br>
removing parts of the `net` collection.<br>
<br>
There are also some parts of some collections that aren't needed. Much<br>
of `openssl` could go if `pkg` was split. The decompiler and<br>
demodularizer could potentially be moved out. Perhaps distributed<br>
places could move.<br>
<br>
Other things to would, in my estimation, be much harder, and would<br>
probably be things that are part of `#lang racket`, like the class or<br>
unit systems or `match`, or things that are deeply intertwined with<br>
`raco setup`, like planet.<br>
<br>
Sam<br>
<br>
On Wed, Jun 26, 2013 at 6:38 PM, Robby Findler<br>
<<a href="javascript:;" onclick="_e(event, 'cvml', 'robby@eecs.northwestern.edu')">robby@eecs.northwestern.edu</a>> wrote:<br>
> I can move mzlib/contract after you get done with other stuff.<br>
><br>
> Robby<br>
><br>
><br>
> On Wednesday, June 26, 2013, Sam Tobin-Hochstadt wrote:<br>
>><br>
>> On Tue, Jun 25, 2013 at 4:32 PM, Sam Tobin-Hochstadt <<a href="javascript:;" onclick="_e(event, 'cvml', 'samth@ccs.neu.edu')">samth@ccs.neu.edu</a>><br>
>> wrote:<br>
>> > While moving some files around between packages, I realized that there<br>
>> > are a number of things that could be moved out of the core and into<br>
>> > packages. Here's a partial list of things that I think are not needed<br>
>> > at all by the rest of the core:<br>
>><br>
>> I've now done the first step of this work. You can see the results<br>
>> here: <a href="https://github.com/plt/racket/pull/373" target="_blank">https://github.com/plt/racket/pull/373</a><br>
>><br>
>> This works to the degree that the core still compiles. No other<br>
>> testing has happened yet -- that's the next step. A number of packages<br>
>> will need additional dependencies.<br>
>><br>
>> I'd like to get feedback on exactly how this is organized. In<br>
>> particular, a bunch of things are now in a `compatibility-lib`<br>
>> collection:<br>
>><br>
>> * almost all of `mzlib`<br>
>> * `compatibility/*`<br>
>> * `racket/mpair` and `racket/mlist`<br>
>><br>
>> There's also the following new packages: `errortrace-lib`,<br>
>> `errortrace-doc`, `unstable-contract-lib`, `unstable-options-lib`,<br>
>> `sandbox-lib`, `data-lib`, `rackunit`.<br>
>><br>
>> The `help` collection moved to `scribble/lib`.<br>
>><br>
>> Where there isn't a new documentation package, libraries are mostly<br>
>> documented in `unstable` or `racket-doc`.<br>
>><br>
>> Things that didn't move:<br>
>><br>
>> * `mzlib/compile`: This is used in one place in the compiler, and<br>
>> should probably be handled differently. Matthew, any suggestions?<br>
>> * `mzlib/unit200`. This is loaded into a new namespace in which code<br>
>> is evaluated in `setup/unpack`. I don't understand what is happening<br>
>> there, and thus won't change it. It's also still used genuinely in<br>
>> `file/gzip`.<br>
>> * `mzlib/contract`. This is different enough from `racket/contract`<br>
>> that I'd prefer to have someone who knows the contract system better<br>
>> handle this. Also, much of the contract system implementation is in<br>
>> the `mzlib` directory, which seems odd.<br>
>> * `srfi/13`: used in `net/cookie` in a way that's intertwined with<br>
>> `srfi/14` and would be hard to remove on its own.<br>
>> * `srfi/8`: Used in unmodified srfi code that we probably shouldn't<br>
>> change.<br>
>> * Other SRFIs -- used in the `db` collection, or depended on by those that<br>
>> are.<br>
>><br>
>> Sam<br>
>> _________________________<br>
>> Racket Developers list:<br>
>> <a href="http://lists.racket-lang.org/dev" target="_blank">http://lists.racket-lang.org/dev</a><br>
</blockquote></div>