octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Separation into dock widgets


From: John Swensen
Subject: Re: Separation into dock widgets
Date: Fri, 29 Apr 2011 17:57:57 -0400

On Apr 29, 2011, at 4:50 PM, Jacob Dawid wrote:

> 
> 
> ---------- Forwarded message ----------
> From: Jacob Dawid <address@hidden>
> Date: 2011/4/29
> Subject: Re: Separation into dock widgets
> To: John Swensen <address@hidden>
> 
> 
> John,
> 
> I think we should do a separate Debugger class and do a clean 
> reimplementation (which is of course much faster than to reinvent the thing). 
> I have almost replaced the whole OctaveLink code that is responsible for the 
> variables and the history. All that is left from octave_server is the 
> for-loops that handle copying from one list to another :P There is still an 
> inconsistency regarding the variables and the history: Variables get returned 
> as a whole list, history just returns the last changes.
> 
> Jacob
> 
> 
Even if you create a separate Debugger class, it should still use the 
OctaveLink to interface with the Octave internals to ensure things are 
processed on the readline idle event loop.  This is the only way of ensuring 
the interactions with the Octave internals are thread safe.

As to what you call and inconsistency between the variables and history, I 
think this is exactly the way it should be done.  Variables can change at any 
time (and the list is usually somewhat small) and so it is beneficial to send 
back the entire list of variable names and info (with the exception of the 
actual values) each time.  This is also a good idea for cases where you have a 
break point or a call to 'keyboard', as the whole list of variables is updated. 
 I suppose you could create a method where every time through you process a 
list of added and removed variables, but this becomes cumbersome when the scope 
changes.  The history on the other hand should be read once at startup and then 
new additions sent each time.  It may seem like and inconsistency, but I think 
it is actually a good way to do it.

John

reply via email to

[Prev in Thread] Current Thread [Next in Thread]