octave-maintainers
[Top][All Lists]
Advanced

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

Re: looking ahead to 3.6


From: John Swensen
Subject: Re: looking ahead to 3.6
Date: Sat, 12 Feb 2011 09:00:09 -0500

On Feb 12, 2011, at 7:53 AM, Søren Hauberg wrote:

>>  * Integrate a GUI with the core Octave distribution.  My preference
>>    would be to start with OctaveDE since I think it is doing the
>>    right thing by embedding Octave rather than communicating with
>>    Octave using pipes.  I'm willing to consider other alternatives,
>>    but it is important to me that we have a way to interact with
>>    Octave's command line without needing to completely reinvent
>>    readline.
> 
> From what I understand OctaveDE provides class that allows you to create
> an Octave widget and query things like variable sizes, etc. A first step
> could be to incorporate that class into Octave. That would also allow
> people to create nice plugins for editors (such as gEdit as was
> discussed on this list very recently).
> 
> Personally, I think we should have an API for interacting with the
> interpreter (determine if a line of code can be parsed, evaluate a line
> of code, set debug break points, ...). I hate to say this, but I do
> believe that reinventing readline is required if we actually want to
> create a GUI with real value.
> 

I don't think re-inventing readline is needed at all.  The octave_server class 
I use can now do most of what you are asking and with some changes to octave 
could do all you are asking it to do:
1) Set debug points, clear debug points, determine if in debug mode, determine 
where the debugger is stopped
2) I can evaluate lines and blocks by actually sending the selected text to the 
VTE terminal.
3) For things like mouse-over variable values and such, octave_server provides 
a mechanism for requesting entire variables.
4) Of course it already gets basic variable information and command history 
from octave

One thing that I would like to see put into the core of Octave (if it isn't 
already there) is the ability to ask the interpreter to interpret a set of line 
numbers in a specified m-file.  This would make implementing execution cells 
(which I also like very much in Matlab) and executing highlighted regions much 
easier and cleaner. This method would also *not* add the executed lines to the 
command history.  The way I currently do it, where I just feed the selected 
text to the VTE terminal, adds every single executed line to the command 
history. For example, I would like to add a function to octave server like
octave_server::execute_code_block (std::string m_filename, octave_idx 
start_line, octave_idx end_line);

John Swensen

Søren: sorry for the double response.  I meant to reply-all and mistakenly only 
replied to you.



reply via email to

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