emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: feature/type-hierarchy 8a63e50036f 1/5: * Define 'cl--type-hierarchy


From: Stefan Monnier
Subject: Re: feature/type-hierarchy 8a63e50036f 1/5: * Define 'cl--type-hierarchy' and compute 'cl--typeof-types' from it
Date: Sun, 03 Mar 2024 12:31:22 -0500
User-agent: Gnus/5.13 (Gnus v5.13)

> Looks to me better now, this is the content on my Emacs after having
> pushed 8d11b7e4275, please have a look:

looks OK, thanks (modulo structure/class because I don't know what these mean).

> Also is not clear to me if 'cl--typeof-types' should include all types
> or only leaf ones.

The intention was to include only leaf types, i.e. the types that
`type-of` can return, since the main purpose was to find the (ordered)
list of parents in:

    (cl-generic-define-generalizer cl--generic-typeof-generalizer
      ;; FIXME: We could also change `type-of' to return `null' for nil.
      10 (lambda (name &rest _) `(if ,name (type-of ,name) 'null))
      (lambda (tag &rest _)
        (and (symbolp tag) (assq tag cl--typeof-types))))

> The original was inconsistent on this,

Maybe that was an oversight.
Do you remember which inconsistency you had noticed in this respect?

> this version evidently includes all types but should be easy to
> generate only based on the leaf ones if necessary.

Having extra types doesn't bring any benefit that I can see but is
fairly harmless (it may just slow down ever so slightly a few method
dispatches, when we have a miss in the method cache).


        Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]