Subject: bug#8415: 23.3.50; Extensible Emacs Registers

From: Stefan Monnier <[email-masked]>
Date: Mon, 04 Apr 2011 21:41:30 -0400

>> AFAICT, the code currently doesn't guess: the different kinds of values
>> are mutually exclusive.  So the moment at which they decide which
>> code to use doesn't matter because it'll give the same answer (tho
>> as you point out there are errors in this code currently because it's
>> dispersed).
> Polymorphism-via-typecase is delicate at best no matter what language we're
> working in.

[ Irrelevant side-comment: Completely depends on the problem at hand: it
  makes adding "methods" much easier. ]

>>> So we will have to make almost all values a struct anyway to fix bugs
>>> like this.
>> Yes, all new types will use register structs.  That's not a problem.
>> And you can even later-on de-support old types and have them go through
>> register structs as well.
> What's wrong with getting it over with now?

It's the difference between "one simple obviously correct change" and
"one big change that might be correct".

> I'd also slightly prefer Leo's structure approach to the
> dispatcher-function one below.

I tend to agree, tho both kind of suck: we'd want real objects with
dynamic dispatch instead.

        Stefan