Re: [julia-users] Why two (qualified) macro invocation forms?
> > I don't think any of these requires a specific form. > Ok. Anyway, this was originally put in place to allow calling un-exported macros: https://github.com/JuliaLang/julia/issues/1107 Question raised here: https://github.com/JuliaLang/julia/issues/1769#issuecomment-231596892 > > > On Sun, Jul 10, 2016 at 12:46 AM, Isaiah Norton> > > wrote: > >> > >> I believe the second form may be vestigial at this point, and agree that > >> it is inconsistent. The usage is non-existent in base (except for one > test), > >> but there is at least one issue for which the current work-around > requires > >> the second form: https://github.com/JuliaLang/julia/issues/14208 > >> > >> On Fri, Jul 8, 2016 at 4:52 AM, Hans-Peter wrote: > >>> > >>> Acc. to the manual [1] either `Mod.@mac` or `@Mod.mac` can be used. > What > >>> is the reason for the second form? Is it necessary to make me (other > >>> people?) think which form should be used preferably? Maybe there is a > reason > >>> (didn't find something in issues/maillist) but with my current > knowledge I'd > >>> propose to 'push' the first form and deprecate the second. > >>> > >>> Both forms are not used often (in Julia source and my v0.4 packages). > The > >>> first (Mod.@mac) form is more frequent. > >>> > >>> ~~~ > >>> find ~/.julia/v0.4/ -name "*.jl" | xargs ack " \w+\.@\w+" > >>> find ~/.julia/v0.4/ -name "*.jl" | xargs ack " @\w+\." > >>> ~~~ > >>> > >>> Sometimes both forms are being used, e.g.: > >>> > >>> ... v0.4/DataArrays/src/DataArrays.jl > >>> 78:Base.@deprecate removeNA dropna > >>> ... v0.4/DataArrays/test/reducedim.jl > >>> 12:Base.Test.@test DataArrays._any(bits, i, j) == v > >>> > >>> vs. > >>> > >>> ... v0.4/Calculus/src/Calculus.jl > >>> 62:@Base.deprecate integrate(f,a,b) quadgk(f,a,b)[1] > >>> ... v0.4/Distributions/test/truncate.jl > >>> 70:@Base.Test.test_approx_eq_eps(logpdf(d, x), lp, sqrt(eps())) > >>> > >>> > >>> [1] > >>> > http://docs.julialang.org/en/latest/manual/modules/#namespace-miscellanea > >> > >> > > >
Re: [julia-users] Why two (qualified) macro invocation forms?
On Sun, Jul 10, 2016 at 12:52 AM, Isaiah Nortonwrote: > (also a work-around for a symbol hygiene issue: > https://github.com/JuliaLang/julia/issues/15085) I don't think any of these requires a specific form. > > On Sun, Jul 10, 2016 at 12:46 AM, Isaiah Norton > wrote: >> >> I believe the second form may be vestigial at this point, and agree that >> it is inconsistent. The usage is non-existent in base (except for one test), >> but there is at least one issue for which the current work-around requires >> the second form: https://github.com/JuliaLang/julia/issues/14208 >> >> On Fri, Jul 8, 2016 at 4:52 AM, Hans-Peter wrote: >>> >>> Acc. to the manual [1] either `Mod.@mac` or `@Mod.mac` can be used. What >>> is the reason for the second form? Is it necessary to make me (other >>> people?) think which form should be used preferably? Maybe there is a reason >>> (didn't find something in issues/maillist) but with my current knowledge I'd >>> propose to 'push' the first form and deprecate the second. >>> >>> Both forms are not used often (in Julia source and my v0.4 packages). The >>> first (Mod.@mac) form is more frequent. >>> >>> ~~~ >>> find ~/.julia/v0.4/ -name "*.jl" | xargs ack " \w+\.@\w+" >>> find ~/.julia/v0.4/ -name "*.jl" | xargs ack " @\w+\." >>> ~~~ >>> >>> Sometimes both forms are being used, e.g.: >>> >>> ... v0.4/DataArrays/src/DataArrays.jl >>> 78:Base.@deprecate removeNA dropna >>> ... v0.4/DataArrays/test/reducedim.jl >>> 12:Base.Test.@test DataArrays._any(bits, i, j) == v >>> >>> vs. >>> >>> ... v0.4/Calculus/src/Calculus.jl >>> 62:@Base.deprecate integrate(f,a,b) quadgk(f,a,b)[1] >>> ... v0.4/Distributions/test/truncate.jl >>> 70:@Base.Test.test_approx_eq_eps(logpdf(d, x), lp, sqrt(eps())) >>> >>> >>> [1] >>> http://docs.julialang.org/en/latest/manual/modules/#namespace-miscellanea >> >> >
Re: [julia-users] Why two (qualified) macro invocation forms?
(also a work-around for a symbol hygiene issue: https://github.com/JuliaLang/julia/issues/15085) On Sun, Jul 10, 2016 at 12:46 AM, Isaiah Nortonwrote: > I believe the second form may be vestigial at this point, and agree that > it is inconsistent. The usage is non-existent in base (except for one > test), but there is at least one issue for which the current work-around > requires the second form: https://github.com/JuliaLang/julia/issues/14208 > > On Fri, Jul 8, 2016 at 4:52 AM, Hans-Peter wrote: > >> Acc. to the manual [1] either `Mod.@mac` or `@Mod.mac` can be used. What >> is the reason for the second form? Is it necessary to make me (other >> people?) think which form should be used preferably? Maybe there is a >> reason (didn't find something in issues/maillist) but with my current >> knowledge I'd propose to 'push' the first form and deprecate the second. >> >> Both forms are not used often (in Julia source and my v0.4 packages). The >> first (Mod.@mac) form is more frequent. >> >> ~~~ >> find ~/.julia/v0.4/ -name "*.jl" | xargs ack " \w+\.@\w+" >> find ~/.julia/v0.4/ -name "*.jl" | xargs ack " @\w+\." >> ~~~ >> >> Sometimes both forms are being used, e.g.: >> >> ... v0.4/DataArrays/src/DataArrays.jl >> 78:Base.@deprecate removeNA dropna >> ... v0.4/DataArrays/test/reducedim.jl >> 12:Base.Test.@test DataArrays._any(bits, i, j) == v >> >> vs. >> >> ... v0.4/Calculus/src/Calculus.jl >> 62:@Base.deprecate integrate(f,a,b) quadgk(f,a,b)[1] >> ... v0.4/Distributions/test/truncate.jl >> 70:@Base.Test.test_approx_eq_eps(logpdf(d, x), lp, sqrt(eps())) >> >> >> [1] >> http://docs.julialang.org/en/latest/manual/modules/#namespace-miscellanea >> > >
Re: [julia-users] Why two (qualified) macro invocation forms?
I believe the second form may be vestigial at this point, and agree that it is inconsistent. The usage is non-existent in base (except for one test), but there is at least one issue for which the current work-around requires the second form: https://github.com/JuliaLang/julia/issues/14208 On Fri, Jul 8, 2016 at 4:52 AM, Hans-Peterwrote: > Acc. to the manual [1] either `Mod.@mac` or `@Mod.mac` can be used. What > is the reason for the second form? Is it necessary to make me (other > people?) think which form should be used preferably? Maybe there is a > reason (didn't find something in issues/maillist) but with my current > knowledge I'd propose to 'push' the first form and deprecate the second. > > Both forms are not used often (in Julia source and my v0.4 packages). The > first (Mod.@mac) form is more frequent. > > ~~~ > find ~/.julia/v0.4/ -name "*.jl" | xargs ack " \w+\.@\w+" > find ~/.julia/v0.4/ -name "*.jl" | xargs ack " @\w+\." > ~~~ > > Sometimes both forms are being used, e.g.: > > ... v0.4/DataArrays/src/DataArrays.jl > 78:Base.@deprecate removeNA dropna > ... v0.4/DataArrays/test/reducedim.jl > 12:Base.Test.@test DataArrays._any(bits, i, j) == v > > vs. > > ... v0.4/Calculus/src/Calculus.jl > 62:@Base.deprecate integrate(f,a,b) quadgk(f,a,b)[1] > ... v0.4/Distributions/test/truncate.jl > 70:@Base.Test.test_approx_eq_eps(logpdf(d, x), lp, sqrt(eps())) > > > [1] > http://docs.julialang.org/en/latest/manual/modules/#namespace-miscellanea >
[julia-users] Why two (qualified) macro invocation forms?
Acc. to the manual [1] either `Mod.@mac` or `@Mod.mac` can be used. What is the reason for the second form? Is it necessary to make me (other people?) think which form should be used preferably? Maybe there is a reason (didn't find something in issues/maillist) but with my current knowledge I'd propose to 'push' the first form and deprecate the second. Both forms are not used often (in Julia source and my v0.4 packages). The first (Mod.@mac) form is more frequent. ~~~ find ~/.julia/v0.4/ -name "*.jl" | xargs ack " \w+\.@\w+" find ~/.julia/v0.4/ -name "*.jl" | xargs ack " @\w+\." ~~~ Sometimes both forms are being used, e.g.: ... v0.4/DataArrays/src/DataArrays.jl 78:Base.@deprecate removeNA dropna ... v0.4/DataArrays/test/reducedim.jl 12:Base.Test.@test DataArrays._any(bits, i, j) == v vs. ... v0.4/Calculus/src/Calculus.jl 62:@Base.deprecate integrate(f,a,b) quadgk(f,a,b)[1] ... v0.4/Distributions/test/truncate.jl 70:@Base.Test.test_approx_eq_eps(logpdf(d, x), lp, sqrt(eps())) [1] http://docs.julialang.org/en/latest/manual/modules/#namespace-miscellanea