The future of SM...

Avi Bryant avi at beta4.com
Sat Jul 31 18:02:16 UTC 2004


On Jul 31, 2004, at 10:00 AM, goran.krampe at bluefish.se wrote:

>> SqueakMap, today, is a catalog of everything.  You can expect to go to
>> SqueakMap and find any package that exists.  However, you can't really
>> expect to click on an item in SqueakMap and have it install 
>> successfully
>> along with any dependencies it needs.
>
> Of course not - because it doesn't *have* dependencies yet. Pretty
> obvious to me.
>
>> That's fine for a catalog of everything.
>>
>> In a one-click installer, though, you should not even *see* stuff that
>> cannot be installed.
>
> This is just filtering, trivial IMHO.
>
>> You should not have to answer questions about
>> different versions of stuff, unless you have explicitly asked to get
>> into the nitty gritty.  Every package version you see in the tool,
>> should be consistent with whatever universe you are operating in.
>
> Fine, again filtering and preferences.

I think you're missing a key point here, or at least dismissing it as 
less important than I think it is.  When you say "just filtering", it 
sounds like you're talking purely about UI: which packages (and package 
releases) are displayed to the user in the package loader.  But what 
Lex is saying is deeper than that: first, that these "filters" will 
affect which versions of required packages are used to fulfill 
dependencies by default (so it doesn't just filter what the user sees, 
but in some sense what the dependency engine sees as well), and second, 
that because of this behavior you can get away with a much simpler 
dependency system - because it's the filters that are doing most of the 
narrowing down to a particular release, and so the dependency engine 
doesn't have to.

That's not a trivial thing, and it's not just a UI layer on top of the 
SM mode: it's a very different way to think about the dependency model, 
and I think you should take it into account.  FWIW, it also aligns 
pretty well with the direction I've been meaning to take 
Monticello-level dependencies/tags...

Avi




More information about the Squeak-dev mailing list