From maintainers-request at octave dot org Mon Nov 15 08:49:05 2004 Subject: Re: Debugging IDE for Octave? From: Kalle August Raiskila To: Charles Fox cc: help at octave dot org, maintainers@octave.org Date: Mon, 15 Nov 2004 16:44:21 +0200 (EET) On Mon, 15 Nov 2004, Charles Fox wrote: > > I've noticed the discussion about Octave IDEs, such as the emacs octave > mdoe, koctave and goctave. However the main reason I'm still using matlab > for serious work is its integrated debugger: Matlab lets you quickly set > breakpoints, step through code, view variable contents, and stop on > errors. I've noticed this too :) > Is there an octave package that will do this? Afaik, no. I searched for something similar earlier this year, and because I didn't find anything, I started writing yaog (yaog.sf.net). I'm planning on it to be an IDE with texteditor and debugging capabilities much like Matlab's GUI (IDE). The main problem in making the debugging work was that the only way to have octave debug my files, was to explicitly use the debug-functons in octave. This resulted in much "clutter" in the terminal. So I looked into how I could tell octave to do stuff kind of "behind the terminal". Possibilities were MPI or listen (from octave-forge), but they take away the interactiveness from octave, something I don't like :). Since nothing suited my needs, I'm currently in the process of writing IPC (interprocess communication) to octave. It is very early, and I haven't yet published it. But it seems to work, and already can send a message from yaog to octave, bypassing the terminal. (I'm using SysV IPC, and I have no idea how it ports to eg Cygwin or Mac: I'm using Linux to hack on it, any comments welcome) If I understand correctly, octave has no support for multiple threads, so it is a big hack to integrate IPC into octave. If there is a better way (the gdb-kindof suggestion) please tell me now, before I do more than just learn SysV IPC :) If there is interest in looking into my work, I can post my work on the web. It's just the src/octave.cc-file that I've modified (of octave 2.1.61). One other thing. Octave seems to be able only to debug functions, not files. So in order to debug "foobar.m" the file must start with function foobar(). This is something I'd like to change. I hope this spurs more conversation... Kalle Raiskila P.S. this propably is off-topic in help, so I'm posting to the maintainer list, sorry for spamming. -- "Kaikki päättyy aikanaan, eetteri virtaa ainiaan." -Nieminen