From: "ankopainting (Anko Painting)" Date: 2012-04-20T14:33:54+09:00 Subject: [ruby-core:44483] [ruby-trunk - Feature #6315] handler to trace output of each line of code executed Issue #6315 has been updated by ankopainting (Anko Painting). ko1 (Koichi Sasada) wrote: > (2012/04/18 13:23), ankopainting (Anko Painting) wrote: > > using a similar mechanism to set_trace_func, I would like a way to get the line number and return value of each line. This would allow me to create a live debugger, much like light table from chris granger and/or bret victor's javascript demo. > > > > It could be an extra return value of set_trace_func or we could use a new method. > > It is interesting because I will fix debugger API. That's great - I see a good debugger as very important for a language. > However, I don't understand what you want and what set_trace_func lacks. > Could you give me examples? > (for example, your favorite "set_trace_func2", the extended set_trace_func) I asked the question on ruby forum here: http://www.ruby-forum.com/topic/4072087#new It has an example, but I'll give you another one; #!ruby # set_trace_func2 proc { |event, file, line, id, binding, classname, return_value| if event == "line" STDERR.puts "#{line}: -> #{return_value.inspect}" end } i = 4 words = %w!brat cat apple!.sort # end of ruby output; 10: -> 4 11: -> ["apple", "brat", "cat"] ------------------- This is my first, simple idea. It would allow your editor to show all return values next to your lines of code by evaluating it all in the browser. I will put in a few more set_trace_func feature requests when I can give decent examples to explain them. Thank you. ---------------------------------------- Feature #6315: handler to trace output of each line of code executed https://bugs.ruby-lang.org/issues/6315#change-26039 Author: ankopainting (Anko Painting) Status: Feedback Priority: Normal Assignee: Category: Target version: using a similar mechanism to set_trace_func, I would like a way to get the line number and return value of each line. This would allow me to create a live debugger, much like light table from chris granger and/or bret victor's javascript demo. It could be an extra return value of set_trace_func or we could use a new method. -- http://bugs.ruby-lang.org/