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

Error when using RCall from Atom #425

Closed
MilenitaR opened this issue Jul 17, 2021 · 1 comment
Closed

Error when using RCall from Atom #425

MilenitaR opened this issue Jul 17, 2021 · 1 comment

Comments

@MilenitaR
Copy link

Error when using RCall from Atom

A cordial greeting.

I am trying to use Julia in Atom, thanks to Juno (Atom) package.

I have the following code:

using RCall

R """
var <- c (1,2,3,4,5)
"""

var_r = R "var"

print (typeof (var_r))

On Julia's console it runs fine.

julia> using RCall

julia> R """
        var <- c (1,2,3,4,5)
        """
RObject {RealSxp}
[1] 1 2 3 4 5

julia> var_r = R "var"
RObject {RealSxp}
[1] 1 2 3 4 5

julia> print (typeof (var_r))
RObject {RealSxp}

But when trying to run it from Atom, the following error appears ...

ERROR: MethodError: no method matching iterate(::Type{Ptr{RCall.SxpHead}})
Closest candidates are:
  iterate(::Core.SimpleVector) at essentials.jl:603
  iterate(::Core.SimpleVector, ::Any) at essentials.jl:603
  iterate(::ExponentialBackOff) at error.jl:253
  ...
Stacktrace:
 [1] iterate at ./generator.jl:44 [inlined]
 [2] collect(::Base.Generator{DataType,JuliaInterpreter.var"#56#57"{JuliaInterpreter.FrameData,UnionAll}}) at ./array.jl:665
 [3] map(::Function, ::Type{T} where T) at ./abstractarray.jl:2098
 [4] evaluate_foreigncall(::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:162
 [5] eval_rhs(::Any, ::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:402
 [6] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Any, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:459
 [7] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:596
 [8] finish!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:14
 [9] finish_and_return! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:30 [inlined]
 [10] evaluate_call_recurse!(::Any, ::JuliaInterpreter.Frame, ::Expr; enter_generated::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:240
 [11] evaluate_call_recurse! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:201 [inlined]
 [12] eval_rhs(::Any, ::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:400
 [13] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Any, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:546
 ... (the last 7 lines are repeated 3 more times)
 [35] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:596
 [36] finish!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:14
 [37] finish_and_return! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:30 [inlined]
 [38] evaluate_call_recurse!(::Any, ::JuliaInterpreter.Frame, ::Expr; enter_generated::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:240
 [39] evaluate_call_recurse! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:201 [inlined]
 [40] eval_rhs(::Any, ::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:400
 [41] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Any, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:541
 [42] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:596
 [43] finish!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:14
 [44] finish_and_return!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:30
 [45] finish_stack!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:60
 [46] debug_command(::Any, ::JuliaInterpreter.Frame, ::Symbol, ::Bool; line::Nothing) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:474
 [47] debug_command(::Any, ::JuliaInterpreter.Frame, ::Symbol, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:416
 [48] (::Atom.JunoDebugger.var"#54#56"{Bool,Bool,Bool})() at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:159
 [49] evalscope(::Atom.JunoDebugger.var"#54#56"{Bool,Bool,Bool}) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:392
 [50] startdebugging(::JuliaInterpreter.Frame, ::Bool; istoplevel::Bool, toggle_ui::Bool) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:157
 [51] (::Base.var"#inner#2"{Base.Iterators.Pairs{Symbol,Bool,Tuple{Symbol,Symbol},NamedTuple{(:istoplevel, :toggle_ui),Tuple{Bool,Bool}}},typeof(Atom.JunoDebugger.startdebugging),Tuple{JuliaInterpreter.Frame,Bool}})() at ./essentials.jl:715
 [52] #invokelatest#1 at ./essentials.jl:716 [inlined]
 [53] (::Atom.JunoDebugger.var"#48#51"{String,String,Bool,Int64})() at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:119
 [54] hideprompt(::Atom.JunoDebugger.var"#48#51"{String,String,Bool,Int64}) at /home/mile/.julia/packages/Atom/BPtI0/src/repl.jl:127
 [55] #47 at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:84 [inlined]
 [56] task_local_storage(::Atom.JunoDebugger.var"#47#50"{String,String,Bool,Int64}, ::Symbol, ::String) at ./task.jl:226
 [57] debug_file(::String, ::String, ::String, ::Bool, ::Int64) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:83
 [58] debug_file(::String, ::String, ::String, ::Bool) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:81
 [59] handlemsg(::Dict{String,Any}, ::String, ::Vararg{Any,N} where N) at /home/mile/.julia/packages/Atom/BPtI0/src/comm.jl:169
ERROR: MethodError: no method matching iterate(::Type{Ptr{RCall.SxpHead}})
Closest candidates are:
  iterate(::Core.SimpleVector) at essentials.jl:603
  iterate(::Core.SimpleVector, ::Any) at essentials.jl:603
  iterate(::ExponentialBackOff) at error.jl:253
  ...
Stacktrace:
 [1] iterate at ./generator.jl:44 [inlined]
 [2] collect(::Base.Generator{DataType,JuliaInterpreter.var"#56#57"{JuliaInterpreter.FrameData,UnionAll}}) at ./array.jl:665
 [3] map(::Function, ::Type{T} where T) at ./abstractarray.jl:2098
 [4] evaluate_foreigncall(::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:162
 [5] eval_rhs(::Any, ::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:402
 [6] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Any, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:459
 [7] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:596
 [8] finish!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:14
 [9] finish_and_return! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:30 [inlined]
 [10] evaluate_call_recurse!(::Any, ::JuliaInterpreter.Frame, ::Expr; enter_generated::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:240
 [11] evaluate_call_recurse! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:201 [inlined]
 [12] eval_rhs(::Any, ::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:400
 [13] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Any, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:546
 ... (the last 7 lines are repeated 3 more times)
 [35] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:596
 [36] finish!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:14
 [37] finish_and_return! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:30 [inlined]
 [38] evaluate_call_recurse!(::Any, ::JuliaInterpreter.Frame, ::Expr; enter_generated::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:240
 [39] evaluate_call_recurse! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:201 [inlined]
 [40] eval_rhs(::Any, ::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:400
 [41] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Any, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:541
 [42] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:596
 [43] finish!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:14
 [44] finish_and_return!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:30
 [45] finish_stack!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:60
 [46] debug_command(::Any, ::JuliaInterpreter.Frame, ::Symbol, ::Bool; line::Nothing) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:474
 [47] debug_command(::Any, ::JuliaInterpreter.Frame, ::Symbol, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:416
 [48] (::Atom.JunoDebugger.var"#54#56"{Bool,Bool,Bool})() at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:159
 [49] evalscope(::Atom.JunoDebugger.var"#54#56"{Bool,Bool,Bool}) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:392
 [50] startdebugging(::JuliaInterpreter.Frame, ::Bool; istoplevel::Bool, toggle_ui::Bool) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:157
 [51] (::Base.var"#inner#2"{Base.Iterators.Pairs{Symbol,Bool,Tuple{Symbol,Symbol},NamedTuple{(:istoplevel, :toggle_ui),Tuple{Bool,Bool}}},typeof(Atom.JunoDebugger.startdebugging),Tuple{JuliaInterpreter.Frame,Bool}})() at ./essentials.jl:715
 [52] #invokelatest#1 at ./essentials.jl:716 [inlined]
 [53] (::Atom.JunoDebugger.var"#48#51"{String,String,Bool,Int64})() at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:119
 [54] hideprompt(::Atom.JunoDebugger.var"#48#51"{String,String,Bool,Int64}) at /home/mile/.julia/packages/Atom/BPtI0/src/repl.jl:127
 [55] #47 at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:84 [inlined]
 [56] task_local_storage(::Atom.JunoDebugger.var"#47#50"{String,String,Bool,Int64}, ::Symbol, ::String) at ./task.jl:226
 [57] debug_file(::String, ::String, ::String, ::Bool, ::Int64) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:83
 [58] debug_file(::String, ::String, ::String, ::Bool) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:81
 [59] handlemsg(::Dict{String,Any}, ::String, ::Vararg{Any,N} where N) at /home/mile/.julia/packages/Atom/BPtI0/src/comm.jl:169
ERROR: UndefVarError: var_r not defined
Stacktrace:
 [1] macro expansion at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:60 [inlined]
 [2] maybe_evaluate_builtin(::JuliaInterpreter.Frame, ::Expr, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/builtins.jl:239
 [3] evaluate_call_recurse!(::Any, ::JuliaInterpreter.Frame, ::Expr; enter_generated::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:204
 [4] evaluate_call_recurse! at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:201 [inlined]
 [5] eval_rhs(::Any, ::JuliaInterpreter.Frame, ::Expr) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:400
 [6] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Any, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:541
 [7] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/interpret.jl:596
 [8] finish!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:14
 [9] finish_and_return!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:30
 [10] finish_stack!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:60
 [11] debug_command(::Any, ::JuliaInterpreter.Frame, ::Symbol, ::Bool; line::Nothing) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:474
 [12] debug_command(::Any, ::JuliaInterpreter.Frame, ::Symbol, ::Bool) at /home/mile/.julia/packages/JuliaInterpreter/kFbUU/src/commands.jl:416
 [13] (::Atom.JunoDebugger.var"#54#56"{Bool,Bool,Bool})() at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:159
 [14] evalscope(::Atom.JunoDebugger.var"#54#56"{Bool,Bool,Bool}) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:392
 [15] startdebugging(::JuliaInterpreter.Frame, ::Bool; istoplevel::Bool, toggle_ui::Bool) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:157
 [16] (::Base.var"#inner#2"{Base.Iterators.Pairs{Symbol,Bool,Tuple{Symbol,Symbol},NamedTuple{(:istoplevel, :toggle_ui),Tuple{Bool,Bool}}},typeof(Atom.JunoDebugger.startdebugging),Tuple{JuliaInterpreter.Frame,Bool}})() at ./essentials.jl:715
 [17] #invokelatest#1 at ./essentials.jl:716 [inlined]
 [18] (::Atom.JunoDebugger.var"#48#51"{String,String,Bool,Int64})() at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:119
 [19] hideprompt(::Atom.JunoDebugger.var"#48#51"{String,String,Bool,Int64}) at /home/mile/.julia/packages/Atom/BPtI0/src/repl.jl:127
 [20] #47 at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:84 [inlined]
 [21] task_local_storage(::Atom.JunoDebugger.var"#47#50"{String,String,Bool,Int64}, ::Symbol, ::String) at ./task.jl:226
 [22] debug_file(::String, ::String, ::String, ::Bool, ::Int64) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:83
 [23] debug_file(::String, ::String, ::String, ::Bool) at /home/mile/.julia/packages/Atom/BPtI0/src/debugger/stepper.jl:81
 [24] handlemsg(::Dict{String,Any}, ::String, ::Vararg{Any,N} where N) at /home/mile/.julia/packages/Atom/BPtI0/src/comm.jl:169
 [25] (::Atom.var"#31#33"{Array{Any,1}})() at ./task.jl:358

What is this error due to?
I've reinstalled everything from Julia, to R, to Atom and its packages ...

If you know why this error is due, could you do me a favor to help me solve it ... Thank you very much.

@digital-carver
Copy link

digital-carver commented Aug 25, 2022

Hi @MilenitaR

Do you still have this issue? The problem seems to have likely been an issue with JuliaInterpreter.jl, which might have been fixed by now.

In any case, Juno isn't a well-supported editor for Julia unfortunately, as Github hav themselves discontinued Atom development. VS Code for Julia (https://www.julia-vscode.org/) is the best supported editor as of now, but you can also use other editors (eg. Vim, Neovim, etc.) using LSP support.

Feel free to close this issue if you're not affected by it anymore, or to ask any further questions you might have.

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

3 participants