There's something I don't understand about them:
type Foo
val
double
function call(::Type{Foo}, val)
new(val, 2*val)
end
end
I understand here that the programmer explicitly provides a way to call
Foo(3), but how does this prevent calls to Foo(3, 4) from being
automatically defined as usual?
Does the language detect, in some way, the explicit specialization and
stops doing it altogether?
Thanks.
--
ELS'16 registration open! http://www.european-lisp-symposium.org
Lisp, Jazz, Aïkido: http://www.didierverna.info