anyone can edit the docs, so you could add it too. although i just tried and got lost in github. so perhaps there's a certain minimum leve of intelligence required.
if i don't see anychange i'll try again later when i have more time. On Wednesday, 8 July 2015 16:54:26 UTC-3, Milan Bouchet-Valat wrote: > > Le mardi 07 juillet 2015 à 15:07 -0700, andrew cooke a écrit : > > > > thanks - the accidental bug explanation makes everything clear (and > > yes, that was the question). cheers, andrew > > > > On Tuesday, 7 July 2015 17:14:32 UTC-3, Leah Hanson wrote: > > > I think his summary in #11031 is accurate, and the reason given > > > directly in the reply is the reason for using/importall to be > > > different. Issue #8000 is a discussion of ways to change/simplify > > > the syntax. > > > > > > I'll take a stab at rephrasing the different in case that helps. > > > There is only one difference, and on the surface (syntax-wise) it > > > may seem very minor. The difference between "using" and "importall" > > > is that with "using" you need to say "function Foo.bar(.." to > > > extend module Foo's function bar with a new method, but with > > > "importall" or "import Foo.bar", you only need to say "function > > > bar(..." and it automatically extends module Foo's function bar. > > > > > > If you use "importall", then "function Foo.bar(..." and "function > > > bar(..." become equivalent. If you use "using", then they are > > > different. > > > > > > The reason this is important enough to have been given separate > > > syntax is that you don't want to accidentally extend a function > > > that you didn't know existed, because that could easily cause a > > > bug. This is most likely to happen with a method that takes a > > > common type like string or int, because both you and the other > > > module could define a method to handle such a common type. If you > > > use importall, then you'll replace the other module's > > > implementation of "bar(s::String)" with your new implementation, > > > which could easily do something complete different (and break > > > all/many future usages of the other functions in module Foo that > > > depend on calling bar). > > > > > > Does this make more sense to you? > > > (And is it an answer to the question you were asking, or did I > > > misunderstand?) > How about adding this to the FAQ, since you took the time to write it > down? > > > Regards > > > > Best, > > > Leah > > > > > > On Tue, Jul 7, 2015 at 9:05 AM, andrew cooke <[email protected]> > > > wrote: > > > > > > > > i'm trying to understand the difference between "using" and > > > > "importall". i have the same confusion described at > > > > https://github.com/JuliaLang/julia/issues/11031 but, unlike the > > > > OP there, reading https://github.com/JuliaLang/julia/issues/8000 > > > > had not clarified things for me. > > > > > > > > thanks, > > > > andrew > > > > > > > > > > > >
