[julia-users] Re: Extending functions in Base (or another module)

2016-06-28 Thread Pablo Zubieta
You might also want to express your perspective on why a function such as invoke is needed here https://github.com/JuliaLang/julia/pull/13123. On Tuesday, June 28, 2016 at 5:26:16 PM UTC+2, Bill Hart wrote: > > We have hit an issue that we can't seem to find a workaround for. Our only > working

Re: [julia-users] Re: Extending functions in Base (or another module)

2016-06-28 Thread Mauro
There is some discussion on invoke on github: https://github.com/JuliaLang/julia/pull/13123 maybe you want to weight in. On Tue, 2016-06-28 at 19:19, 'Bill Hart' via julia-users wrote: > You are a life saver. This is *precisely* what we need. Thank you for >

Re: [julia-users] Re: Extending functions in Base (or another module)

2016-06-28 Thread 'Bill Hart' via julia-users
You are a life saver. This is *precisely* what we need. Thank you for solving a very difficult problem for us. We were really pulling our hair out after searching for a solution. julia> module Nemo import Base: det abstract MatElem function det(a::MatElem)

[julia-users] Re: Extending functions in Base (or another module)

2016-06-28 Thread 'Bill Hart' via julia-users
Another possibility: introduce a special "extends" syntax to Julia, e.g. module Hecke type SpecialMat <: Nemo.MatElem end function det(a::SpecialMat) if blah # do whatever else Nemo.det end end extends det Nemo.det # tells Julia to somehow treat the det implementation

[julia-users] Re: Extending functions in Base (or another module)

2016-06-28 Thread 'Bill Hart' via julia-users
By the way, here are some potential things that could solve this for us: 1) Allow individual methods to be callable, as in Julia 0.4 (so long as we can look the methods up at "compile time" in a module and assign them to a const in the module so that they can be called). As far as we can see,