Julia debugger cheat sheet

Is there a cheat sheet for Gallium and ASTInterpreter? The Julia cheat sheet helped me a lot and I wonder if there is one for the debugger.

BTW, other than the two video clips that can be found on youtube and the readme text, is there any more serious documentation or explanation for Gallium + ASTInterpreter?

3 Likes

Just use ? at the prompt:

julia> using Gallium

julia> @enter 1+1
In int.jl:32
31  -{T<:BitInteger}(x::T, y::T) = box(T, sub_int(unbox(T,x),unbox(T,y)))
32  +{T<:BitInteger}(x::T, y::T) = box(T, add_int(unbox(T,x),unbox(T,y)))
33  *{T<:BitInteger}(x::T, y::T) = box(T, mul_int(unbox(T,x),unbox(T,y)))
34  

About to run: ((intrinsic function #1))(Int64,1)
1|debug > ?
  Basic Commands:
  - n steps to the next line
  - s steps into the next call
  - finish runs to the end of the function
  - bt shows a simple backtrace
  - `stuff runs stuff in the current frame's context
  - fr v will show all variables in the current frame
  - f n where n is an integer, will go to the n-th frame.

  Advanced commands:
  - nc steps to the next call
  - ns steps to the next statement
  - se does one expression step
  - si does the same but steps into a call if a call is the next expression
  - sg steps into a generated function
  - shadow shows the internal representation of the expression tree
   (for debugger debugging only)
  - loc shows the column data for the current top frame,
   in the same format as JuliaParsers's testshell.
1 Like

Thanks. That’s good but when it’s printed, it bumps up what I have just done at the REPL, which is irritating. I think I’ll just print out the readme/help text and post it somewhere near my workstation.

Another question - how to list the neighboring source lines above and below current line. In other Debugger, this is l [n], where the number n of the source lines that will be printed is optional.

I noticed that the Gallium.jl project at Github seems dead (https://github.com/Keno/Gallium.jl). Latest commit is from 8 months ago. Is this a bad sign?

Keno posted recently that he is working on the upgrade. However, from what I’ve seen, it’s been lower in priority than quite a number of 0.6/1.0 related issues.

I understand that the current work happens here: https://github.com/Keno/ASTInterpreter2.jl

2 Likes