I can't reproduce it on 0.4. But I have an improvements: https://gist.github.com/SimonDanisch/92e4500a0198c81912f5#file-jl Map works perfectly fine with tuples ;)
>When I type in anything else into the interpreter in this case f what f? Am Montag, 5. Oktober 2015 15:27:45 UTC+2 schrieb [email protected]: > > I am trying to "lift" base functions to allow Nullable types to be used > natively I am getting a stack-overflow error with the following code: > > # Test with just a few functions > import Base: get, +, -, /, *, ^ > > # Function symbols to be lifted > funs = [:+, :-, :/, :*, :^] > > # Generic get function > # Assume appropriate get functions are written for each type > function get{T}(x::T) > x > end > > S = Union{Symbol, Expr} > > # Lifter function > function lift(fun_name::S, new_type::S) > quote > function $fun_name{T}(x...;t::T=x) > y = Array(Any, length(x)) > for i in 1:length(x) > y[i] = get(x[i]) > end > ret = $fun_name(y...) > return $new_type(ret) > end > end > end > > # Then lift the functions > for i in funs > eval(lift(i, :Nullable)) > end > > When I type in anything else into the interpreter in this case f, I get > the error message: > > WARNING: Caught an exception in the keymap: > ERROR: StackOverflowError: > ERROR: UndefVarError: f not defined > > Another odd thing about this error is that it doesn't always happen right > away and sometimes doesn't happen at all which is odd. I have also tried > loading the code by include(scriptfile.jl) but the same thing happens > > My Environment: Version Info: 0.5.0-dev+433 (2015-09-29 15:39 UTC), Ubuntu > 14.04 x86_64-linux-gnu > > DP > > >
