lua-users home
lua-l archive

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


>This looks like a very powerful enhancement.

it's powerful, but really "only" a cleaned-up fallback concept.
i think the fallback concept is the really powerful construct.
prior to 3.0, fallbacks were global and had to be chained (with hard-to-predict
iterations).
with 3.0 and tag methods, fallbacks are now local to object families.

>It seems a shame (IMHO) to use
>such a small word as 'tag' to describe it; tags as described seem to confer
>membership of a sort of "meta class" or "exception interface" (interface in

well, english is not our first language. we may be missing some of the
more subtle meanings of the word "tag".
we certainly do not want 'class' or 'type' because these seem to imply some
kind of checking or hard type system, which Lua does not have.
to us, from the beginning, "tag" was just something that the user gave to an
object (originally, only userdata) so that he could treat different objects
in different ways. i think this meaning is still valid.

>species phylum family genus caste category taxon(?) ilk(!) ...
>
>I think I like 'species' best, it conveys the idea of something evolved and
>adapted to cope with a particular (ecological) niche...

i prefer 'family', but this would give very long names in the API...

>Ok, so this has all been a bit of a quibble over nomenclature but I think
>Lua's authors really have something quite new here; is it species-oriented
>programming?

I agree. methods attached to "tags", which can be dynamically changed (both
methods and tags), are really powerful.
I hope that you will help us show how.
--lhf