On Thu, Apr 21, 2016 at 10:55 AM, Stefan Karpinski <ste...@karpinski.org> wrote: > This is probably more of a julia-dev topic, but my gut reaction is that the > combination of multiple dispatch and implicit conversion would be chaos. > Following method calls can be tricky enough (much easier with Gallium, > however) with just dispatch in the mix. With implicit conversion too, it > seems like it would be nearly impossible to know what might or might not be > called. I think it would be too easy to accidentally invoke a method that > wasn't intended.
I think the proposal was to add an automatic conversion on top of the dispatch. so f(a::Integer as Int) = ... will be effectively translated to f(_a::Integer) = (a = convert(Int, _a)::Int; ...) > > On Thu, Apr 21, 2016 at 9:05 AM, Didier Verna <did...@didierverna.net> > wrote: >> >> >> This is just an idea from the top of my head, probably wild and maybe >> silly. I haven't given it any serious thought. >> >> Given the existence of the general promotion system (which I like a lot, >> along with other things in Julia, such as the functor capabilities), I'm >> wondering about automatic specialization. >> >> What I mean is this: suppose you have a type Foo which can be converted >> to an Int. Suppose as well that you have a function bar that only works >> on Ints. You cannot currently call bar with a Foo, but since Foo is >> convertible to an Int, it could make sense that bar() suddenly becomes >> an applicable method, with implicit conversion... >> >> -- >> ELS'16 registration open! http://www.european-lisp-symposium.org >> >> Lisp, Jazz, Aïkido: http://www.didierverna.info > >