The StartX Files: Between the Sheets with Siag - page 2
Seeing the Obvious
Believe it or not, that sweeping introduction has quite a bit of inspiration from this week's focus of Between the Sheets: the Siag spreadsheet. Because it was another one of those things that slapped me on the head and reminded me of the obvious yet-sometimes-forgotten diversity of the Linux application set. I'll be honest with you, when I sat down to review these spreadsheets, I figured I was in for a parade of similar-looking, some are faster, some are bigger applications.
But a couple of times along the way, I have found an approach to a spreadsheet that's so completely different, it knocked me back into my chair with thoughts of "sure, why didn't somebody think of that sooner?"
NExS was the first application in this mini-series to do that. Siag is the second.
Siag is one component of the free, GPLed office suite, Siag Office. The fact that the name of the suite takes its name from the spreadsheet and not the word processor (the cheekily named Pathetic Writer) gives some clue as to the prominence of application. (Or that the creators thought Pathetic Writer Office suite was a really, really bad idea.)
Names are important in Siag, as they give big clues as to what the application is all about. Siag is actually an acronym for Scheme in a Grid, which right away may tell you something. Or have you scratching your head.
Not to worry: According to the Scheme Web site at the University of Michigan, Scheme is "a dialect of the Lisp Programming Language invented by Guy Lewis Steele Jr. and Gerald Jay Sussman. Originally called Schemer, it was shortened to Scheme because of a 6 character limitation on file names. Scheme is a small, exceptionally clean language which is fun to use. The language was designed to have very few, regular constructs which compose well to support a variety of programming styles including functional, object-oriented, and imperative."
Which tells you something about Scheme.
To cut to the chase, how this works in Siag is this: you have a spreadsheet application that can use programming expressions (as opposed to scripts) to set up almost any function in a spreadsheet document that you would want.
Getting a hold of Siag (and you will be getting the entirety of the Siag suite) is painless: binaries and source tarballs are linked on the Siag site. RPMFind.net is a good source, too, if you are looking for something distribution specific.
Installation on my Mandrake 8.1 box was easy, though I did have to go out and pick up two sets of widgets to add to my /lib directory: libXawM and libMowitz. If you don't have these on board your system, go get them first. It'll save you a little backtracking.
There are extra components you will need to make sure you have installed to run some of the extras in Siag: graphing needs Gnuplot, the Help system needs Chimera, and the Print Preview function needs Ghostview.
When all this is in place, Siag is ready to begin. But if you are a non-programmer, you may not be ready for Siag.
If you look at Siag at face value, you will see a simplistic little spreadsheet application that does not seem loaded down with a lot of tools and menus. I was initially not impressed.
When I review an application, I have a little "first impressions" session to get a feel for what this application will be like. In Siag's first session, I thought I had found a real clunker. Where were the functions? Why was text entry in cells so hard? Surely someone did not put this thing out on the Web to download?
And that's where first impressions can be very misleading. After checking out the documentation, I found out I was way off-base with Siag. I found about about Scheme, and all of the ways you can use C-like expressions to build upon the 300+ function library to build something as simplistic as a custom function... or an applet as complex as a Web server (something that is included as an example with Siag).
From a user standpoint, there is not a lot to get excited about. The Xt-widget interface is simple and to the point, but cell entry is cumbersome since you have hit the Enter key every time. Formatting tools were not very sophisticated, either.
Interoperabilty is a bit better: besides its own file format, Siag can open Lotus 1-2-3, LaTeX, HTML, or direct Scheme code. It can save out to all of these save Scheme, though it can save also save to Troff and PDF files (though I suspect you need something more to accomplish this last task; when I tried it it did not work).
From this perspective, Siag is not up to desktop standards. But with the Scheme functionality, it's better to think of Siag as a very good shell, into which a skilled programmer can pour in some very creative stuff and get some really unique output.
So, slip this is in your "Check this Out" file, programmers, and see if Siag is something that can help you.
Available from: http://siag.nu/index.html
Version reviewed: Siag 3.5.0-2