Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Broken for current 0.4? #8

Closed
timholy opened this issue Aug 1, 2015 · 3 comments
Closed

Broken for current 0.4? #8

timholy opened this issue Aug 1, 2015 · 3 comments

Comments

@timholy
Copy link
Member

timholy commented Aug 1, 2015

I decided to check this package out. Is it broken by the require(::Symbol) change?

A.jl:

module A

using Requires

export foo, bar

foo(x) = "hello"
@require B begin
    println("defining bar")
    bar(y::B.Btype) = "there"
end

end

B.jl:

module B

export Btype

type Btype
    val::Int
end

end

Test:

julia> using Requires, A

julia> foo(7)
"hello"

julia> using B

julia> bar(7)
ERROR: UndefVarError: bar not defined

I'm guessing the require(::Symbol) thing is hard to get around?

@MikeInnes
Copy link
Collaborator

Hmm, looks that way. I think the require(::Symbol) change must've gone over my head, any chance I could get a reference for that?

Should be workaroundable either way.

@timholy
Copy link
Member Author

timholy commented Aug 3, 2015

That's an immensely clever hack. 😄

require(::Symbol) comes from JuliaLang/julia#12040 and JuliaLang/julia#8745.

@MikeInnes
Copy link
Collaborator

It'll take a bit more of a challenge to make me deprecate this package :) Thanks for the link!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants