Created
October 10, 2017 17:57
-
-
Save pfitzseb/1619a54e77f0d3346748b5647f0381c0 to your computer and use it in GitHub Desktop.
requires
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
~/Documents/julia master j6 ✓ 19:55:43 | |
_ | |
_ _ _(_)_ | A fresh approach to technical computing | |
(_) | (_) (_) | Documentation: https://docs.julialang.org | |
_ _ _| |_ __ _ | Type "?help" for help. | |
| | | | | | |/ _` | | | |
| | |_| | | | (_| | | Version 0.6.1-pre.unknown (2017-10-07 01:18 UTC) | |
_/ |\__'_|_|_|\__'_| | Commit 389b23c* (3 days old release-0.6) | |
|__/ | x86_64-redhat-linux | |
julia> module Foo | |
using Requires | |
@show @macroexpand @init println("init") | |
@init println("init") | |
end | |
@macroexpand(@init(println("init"))) = quote # /home/basti/.julia/v0.6/Requires/src/init.jl, line 16: | |
begin # /home/basti/.julia/v0.6/Requires/src/init.jl, line 5: | |
if !((Requires.isdefined)(:__inits__)) # /home/basti/.julia/v0.6/Requires/src/init.jl, line 6: | |
const __inits__ = (Requires.Function)[] | |
end # /home/basti/.julia/v0.6/Requires/src/init.jl, line 8: | |
if !((Requires.isdefined)(:__init__)) # /home/basti/.julia/v0.6/Requires/src/init.jl, line 9: | |
__init__() = begin # /home/basti/.julia/v0.6/Requires/src/init.jl, line 9: | |
for f = __inits__ # /home/basti/.julia/v0.6/Requires/src/init.jl, line 24: | |
f() | |
end | |
end | |
end | |
end # /home/basti/.julia/v0.6/Requires/src/init.jl, line 17: | |
(Requires.push!)(__inits__, (()->begin # /home/basti/.julia/v0.6/Requires/src/init.jl, line 17: | |
println("init") | |
end)) # /home/basti/.julia/v0.6/Requires/src/init.jl, line 18: | |
Requires.nothing | |
end | |
init | |
Foo | |
---------------------------------------------------------- vs --------------------------------------------------------- | |
~/Documents/julia master julia --depwarn=no ✓ 19:55:19 | |
_ | |
_ _ _(_)_ | A fresh approach to technical computing | |
(_) | (_) (_) | Documentation: https://docs.julialang.org | |
_ _ _| |_ __ _ | Type "?help" for help. | |
| | | | | | |/ _` | | | |
| | |_| | | | (_| | | Version 0.7.0-DEV.2097 (2017-10-10 05:01 UTC) | |
_/ |\__'_|_|_|\__'_| | Commit c61aa27 (0 days old master) | |
|__/ | x86_64-redhat-linux | |
julia> module Foo | |
using Requires | |
@show @macroexpand @init println("init") | |
@init println("init") | |
end | |
#= REPL[1]:3 =# @macroexpand(#= REPL[1]:3 =# @init(println("init"))) = quote | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:16 =# | |
begin | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:5 =# | |
if !((Requires.isdefined)(:__inits__)) | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:6 =# | |
const Requires.__inits__ = (Requires.Function)[] | |
end | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:8 =# | |
if !((Requires.isdefined)(:__init__)) | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:9 =# | |
(Requires.__init__)() = begin | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:9 =# | |
for #2#f = Requires.__inits__ | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:24 =# | |
#2#f() | |
end | |
end | |
end | |
end | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:17 =# | |
(Requires.push!)(__inits__, (()->begin | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:17 =# | |
println("init") | |
end)) | |
#= /home/basti/.julia/v0.7/Requires/src/init.jl:18 =# | |
Requires.nothing | |
end | |
ERROR: UndefVarError: __inits__ not defined |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment