New library: open multi-methods
Jean-Louis Leroy via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Mon Jul 17 15:46:02 PDT 2017
On Monday, 17 July 2017 at 21:31:20 UTC, jmh530 wrote:
> On Monday, 17 July 2017 at 20:41:05 UTC, Jean-Louis Leroy wrote:
>> Thinking about it, 'openmethods' would probably be a better
>> module/package name than just 'methods'. It emphasizes the #1
>> feature, i.e. polymorphism outside of classes.
>
> Googling `multimethods` brought up more programming-related
> topics than `openmethods`.
Yeah, I know, but I can imagine someone casually browsing the
registry, coming across the module and saying "multi-methods?
yeah, cool, but I don't remember ever needing such a thing".
Indeed "multi" is nice, but IMO "open" is much more important. It
is still much more frequent to have only one virtual argument.
Take the awful Visitor pattern, for example. It can be neatly
replaced with an open method taking only one virtual argument
(barring other considerations).
'openmultimethods' is another option but again it emphasizes
'multi'.
Anyway, if I go for just 'openmethods', there are enough mentions
of 'multi-methods' in the docs.
I think I will rename 'methods' to 'openmethods' for the time
being, but the discussion remains open. Not renaming the repo yet.
Thinking about it, I should add a Visitor replacement example...
J-L
More information about the Digitalmars-d-announce
mailing list