Re: What databases have taught me
Date: 29 Jun 2006 12:08:20 -0700
Bruno Desthuilliers wrote:
> erk wrote:
> > This enables a class of more powerful and generic functions, while
> > nominal typing enables enforcement, but limits flexibility. I wonder
> > whether a language that supports both kinds of typing would be useful,
> > or a disastrous mess.
> Then just try some of them !-)
Which ones exist?
> > I think multimethods are essential for system extensibility, and
> > essential to proper polymorphic behavior (which is about the only
> > useful, albeit usually poorly-implemented, feature of O-O).
> Don't know for sure if it's the "only useful" feature of OO, but that's
> definitively something that really helps IME. And when one reads the
> description (and implementation details, my my my) of the "visitor
> pattern", the fact that there's a problem with how polymorphism works in
> most OOPLs is quite obvious indeed !-)
I definitely made a mistake here, as polymorphism is only a limited application of a certain style of dispatch. It was being done (and better) before O-O.
> I have too few working experience with pattern matching  to tell if
> it's really the same thing, but what I was talking about is boolean
> expressions on the parameters of the method. If that's not the
> appropriate terminology, feel free to suggest a better one.
Yes, it is. I think the predicate-based approach is more general.