girls 'ill do that to you....

So they say necessity is the mother of all invention... personally I tend to believe its the affections of a woman ;)

Basicly it started last week, my wife is working on her masters in EE, and found out that the lab at work didn't have Matlab installed for his DSP class. So I told her about GNU Octave http://www.octave.org and she was for the most part thrilled.

The rub is that its a VERY unixy application, full of odd consoles, that don't play well with others and commands that are not always clear. So not to leave her high and dry I started on a GUI wrapper for Octave. http://www.geiseri.com/kdevelop/console.png and http://www.geiseri.com/kdevelop/embedded_input.png are the progress so far. I have the embedding of the engine done, and interaction with the input and help systems complete. My next step is to make the plot() function a bit more friendly. Once I have solved that issue I can start with an IDE... but thats another blog.

Yeah, and I snuck flowers into her office for our anniversary. I am pretty sure that either she forgot, or she figures I forgot, since I have not heard her talk about it for some weeks. Either way, gold star for me. :)


I confess to never having tried it, but what about kdenonbeta/frontman - http://www.ece.osu.edu/~ravi/kde/frontman.html ?

Octave - http://www.octave.org
Macaulay2 - http://www.math.uiuc.edu/Macaulay2
Singular - http://www.singular.uni-kl.de
Yacas - http://yacas.sourceforge.net

It probably needs a bit of KDE 3.3 updating, but might be worth a look?

By brad hards at Fri, 10/08/2004 - 11:03

... in scope or goals or implementation.

but his syntax parser for octave might be neat further down the road. my goal is native KDE octave.

By Ian Reinhart Geiser at Fri, 10/08/2004 - 13:26

As the author of Frontman, I must confess that its original design sucks. I want to get rid of that sort of a parser. I actually started a much neater design at the end of last year based on KDevelop/Gideon and part of it is in CVS. A lot of the infrastructure that I wished to have is already there. One would just make a small paradigm shift - allow use of interpreted languages as well as compiled languages.

Unfortunately, I have had no time to work on KDE related stuff for about 6 months now and probably not for another 6 months. (Having to graduate, find a job, buy a house, and now settling visa issues in the US has taken all my time.) I know it's the usual almost-abandonware excuse, but I promise to be back some time in March. I live near Philly now, though, and might be able to hook up with geiseri some time next year if he is still interested in this.

What I would most like to have is MathML support in KHTML, which would simplify most of the abominable display engine code in Frontman which is a nightmare to maintain across various versions of Qt. Paul Kienzle wrote some nice stuff that helps out with some of this in a generic way, but I am nowhere near making use of it. Frontman is basically a screen scraper if it does not have the ability to display MathML.

The other big thing that I do not really care about, but seems to be a big issue for a lot of people is a Qt/KDE replacement for Gnuplot. Personally, I think Octave/Gnuplot is broken in the way they communicate. Someone (with lots of free time and is masochistically inclined) should rip that out of Octave and make it use a DLL which exports a reference interface.

KDockMainWindow and freinds are another pain which I hope will be superseded in Qt4 by some classes with a cleaner and saner API. If only QDockWindow was not so brain dead for uses other than as toolbars!

By KDE User at Fri, 10/22/2004 - 20:30

I wonder if you've seen this before beginning your code ;)

It's not the most impressive gui I've seen. Actually I believe the most un-user-friendly thing in octave (and koctave too) is that it uses gnuplot for plotting.

And the best thing about it, it's that it uses Matlab syntax, so one can port code easily (Matlab syntax is quite friendly too compared to most other math tools I've seen)

At some point we'll get the long-awaited Matlab replacement for KDE/linux :)

By uga at Fri, 10/08/2004 - 14:39

this was the reason i started my own project. other than being dead, koctave has some serious issues wrt to usability. Its basicly Kate and Konsole.

By Ian Reinhart Geiser at Sun, 10/10/2004 - 02:08

Scilab is another Matlab like application and shares many of its language and its function names, the interface isn't kde-like but seems usable at least.


By cirkus at Fri, 10/08/2004 - 22:42

>and shares many of its language and its function names

That's the mistake most people do. Did you actually _test_ it or just looked at the screenshots? I've been a Matlab user for years, and I did test it. The language and the syntax, variable orders... is different, even on very basic functions. And both the interface and the way the data is shown on screen are far from nice.

Really octave beats this thing by a lot imho. Not for functionality, but for usability.

By uga at Sat, 10/09/2004 - 21:39

not only is octave complete but their bindings interface is so damn easy, its trivial to integrate it into any other application.

its mostly compatible with the unix version of matlab, and its serial io stuff is awesome.

By Ian Reinhart Geiser at Sun, 10/10/2004 - 02:09

I greatly encourage you to keep working on this! I am an Octave user and find it very cumbersome to use. I like how you can just run it via konsole, but GNUPlot is outdated and is hard to use. If you can do something about that, that would be something. Can you integrate it with QtiPlot? I have never used QtiPlot, but it looks highly rated on kde-apps.org

I would be interested in knowing when your code is ready for download. I am interested in testing your software. Thanks.

By yf12s at Sat, 10/09/2004 - 01:06

GNUPlot is very complete, yes its a pain in the ass to use, but its very complete. I wanted to avoid using ya plotting utiltiy. QtiPlot has some very wacky deps, KMatPlot/QMatPlot is basicly unmaintained, not sure what Kst does, and KChart in KOffice isnt powerful enough.

Currently I have made a Qt widget wrapper for GNUPlot that can do most of what GNUPlot can do, but from a nice QWidget. Stay tuned for this ;)

By Ian Reinhart Geiser at Sun, 10/10/2004 - 02:13