Hrvoje Niksic writes:
Hrvoje> When we talked in Paris, you said that you considered the redisplay
Hrvoje> engine (relatively) well-written and worth upgrading.
That's not exactly what I said. My feeling about redisplay is that
inside a certain conceptual domain (see below), the stuff is quite well
written: for instance, it was trivial for me to make the dim face property
work under X, or to add new specifier like the divider width/height, or some
shadow thickness somewhere... those things were trivial to implement because
they don't interfere with the current high-level model of redisplay (what I
called the conceptual domain).
At the time we met, I was thinking mainly of those things that I'd
done. But the point is that nowadays, we're beginning to experiment the limits
of the current model, in two ways IMHO:
* first, the increasing number of features and their complexity make several
aspects of the current redisplay less efficient and robust. The critical
example is what/when to redisplay. It's probable that the current model got
confused during the last major redisplay modifications before Andy's subwindow
support (IIRC, Kirill and I were quite active at that time).
* second, there are new features we'd like to have but I think would require a
major rewrite. Pixel based scrolling, real 2d formatting and the like doesn't
work well with the current, line-oriented model. I've talked several times
with Chuck and I know he doesn't totally agree with me on this, but for
instance, I found quite hard to implement the bevel extent when I tried it. So
hard (or more precisely kludgy) actually that I turned out thinking that we'd
better rethink several lower-level functionalities before.
Obviously, those are my impressions based on the current knowledge I
have of redisplay, which is for sure incomplete.
Hrvoje> Like getting your PhD done. :-)
My what ? :-)
--
/ / _ _ Didier Verna
http://www.inf.enst.fr/~verna/
- / / - / / /_/ / E.N.S.T. INF C201.1 mailto:vernaļ¼ inf.enst.fr
/_/ / /_/ / /__ / 46 rue Barrault Tel. (33) 01 45 81 73 46
75634 Paris cedex 13 Fax. (33) 01 45 81 31 19