|
From: Andreas R. <and...@gm...> - 2004-04-08 23:03:58
|
Dan,
This sounds all good to me. Couple of extra notes:
> Order of evaluation
> I know we've chatted about this in the past, and believe me
> I *want* to do this. Unfortunately, I think for Squeak it
> would be a mistake. There is a fair amount of useful
> software (mainly compilers) in the community that has
> the left-to-right convention built in. Then there is the
> occasional bad usage of the form (strm next * 256 + strm next),
> but they deserve what they get.
Uh, ah. That wasn't quite clear to me. Would this mean that, say:
self foo: self arg1
bar: self arg2
baz: self arg3.
Changes the order of evaluation for arg1-arg3? Would this be inavoidable? If
so I'm absolutely against changing order of evaluation to right-to-left.
Reading direction is *so* important for people that evaluating the above
"the other way around" would almost certainly lead to the most horrible
subtle bugs.
> Decoupling GC from Primitives
> This seems like an all-around win, although not really V4-related.
> i would love it if someone would take it upon themselves to spec
> this and estimate difficulty, so we can review it, and then actually
> do it.
Sounds good. I'm not sure I'll find the time to do it myself but I'll see if
I can stick it in one lazy afternoon (say, wasn't there an easter weekend
somewhere? hm...)
> Separate Allocation of some Bits Objects
> I understand that this one matters. I'm just the wrong person
> to spec it or do it (since I know relatively little about media
> engines and OS resource management). Most other serious
> implementations have such a facility, and I'm sure it would
> help with any serious media work. I'm happy to manage it as
> part of this project.
The "most important" thing is to have some field in the image header that's
set to zero - then we got plenty of time to figure out what we stick in when
we have it :-)
> Flat Rectangles
> I never wrote about this, but I came very close do doing
> this in the early history of Squeak. It saves time getting
> to BitBlt, doing intersections, etc, and it saves a little
> space, too. I wouldn't do this for me right now, but I'm
> wondering if Mr. Graphics has ever wished for it.
> I think it's not a hugely hard change to make (at least it
> wasn't back then).
Hm... I don't think there are too many advantages to it. BitBlt is the only
object in the image that uses a "fat" primitive interface - almost all other
prims dealing with rectangles just pass points or numbers verbatim. In
short, I've never truly wished for it, but I don't think it would do any
harm either. The most important part might be the space savings (avoids two
object headers for points) but that's about it.
Cheers,
- Andreas
|