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

Base.invokelatest doesn't accept kwargs. #22642

Closed
rofinn opened this issue Jun 30, 2017 · 2 comments
Closed

Base.invokelatest doesn't accept kwargs. #22642

rofinn opened this issue Jun 30, 2017 · 2 comments

Comments

@rofinn
Copy link
Contributor

rofinn commented Jun 30, 2017

I took a quick scan through the code in case there was an easy fix, but it looks like Base.invokelatest(f, args...) (base/essentials.jl) jumps directly to Core._apply_latest(f, args) (src/builtin.c). Is there a way to add this functionality without editing multiple functions in builtins.c?

@Keno
Copy link
Member

Keno commented Jun 30, 2017

Use a closure?

@rofinn
Copy link
Contributor Author

rofinn commented Jul 1, 2017

Yep, that works. Thanks @Keno!

epatters added a commit to AlgebraicJulia/Catlab.jl that referenced this issue Jul 15, 2017
That took more effort than I expected, but all the tests are passing
without errors or deprecation warnings.

The most annoying issue is Julia's new "world age counter" feature
(bug?). It's now impossible to call the functions produced by
compiling algebraic networks before they propagate to the toplevel:

https://docs.julialang.org/en/latest/manual/methods.html#Redefining-Methods-1

Also, we can't use the `invokelatest` workaround because it doesn't
yet support keyword arguments:

JuliaLang/julia#22642
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