RFC: refactoring window-register as widget-register + containing window

Dave Peticolas dave@krondo.com
25 Nov 2001 18:30:37 -0800


--=-1F/KS5rWTJA7D91eLdKZ
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

On Sun, 2001-11-25 at 18:22, Derek Atkins wrote:
> Dave Peticolas <dave@krondo.com> writes:
>=20
> > > Yea, but you already need to have a list of cell locations; just keep
> > > a pointer to the list and viola, you always have your references. :)
> >=20
> > Pointer to the list? You are thinking too low-level here.
> >=20
> > Something needs to have a list of cell locations, but that
> > is implementation detail that the user-level model shouldn't
> > know about. The user code should be written at as high a level
> > as possible so it can be written in C or Scheme, preferably in
> > a declarative style where that is possible.
> >=20
> > The goal here is to eventually specify much of the layout
> > and model in scheme.
>=20
> Sure, you define the model and layout at a high-level, but
> you still need to pass that down to the low-level.  And it's
> the low-level code that needs to make the callbacks knowing
> the list of data types.  So I don't see the problem, here.

High-level code needs to *implement* the callbacks and sometimes
high-level code needs to refer to other cells besides the one
it is implementing the specific callback for. That is the problem
here. In other words, when the high-level needs to talk to the
low-level, it should use high-level names, not low-level
implementation details.

Certainly, low-level code will not know what the names mean and
will often simply traverse the cells without reference to their=20
containts, like when saving a row and invoking 'save-me' callbacks.
But I'm not talking about low-level code here.

dave


--=-1F/KS5rWTJA7D91eLdKZ
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQA8AalN5effKKCmfpIRAt1jAJ931PZt5r9U6E20hHvkHOOsK++d4QCglRUl
jdYCL9uVd5suc7lZGHyjONc=
=5ABe
-----END PGP SIGNATURE-----

--=-1F/KS5rWTJA7D91eLdKZ--