Originally Published: Tuesday, 6 February 2001 Author: Ross Sanders
Published to: develop_articles/Development Articles Page: 1/1 - [Printable]

A First Look at SPlus 6.0 for Linux

SPlus has finally been released in a Linux version. For many users this may be the first look at this package that has traditionally only been available on commercial OSes. Ross Sanders tries it out and gives us his first analysis of how it works.


   Page 1 of 1  

MathSoft, the makers of the much vaunted and extremely well known packages such as MathCAD and Axum, has pushed ahead into new territory for their data analysis package called SPlus. MathSoft now has a version of SPlus for Linux. Those of you who are in academia and other R&D areas are likely quite familiar with this data analysis software package. For others like myself, the Linux version is my first look at SPlus at all, although I'm fully familiar with MathCAD and Axum from my time as a student in experimental physics.

MathSoft's statistical and analysis development group has spun off around SPlus as its primary product. The new company's name is "Insightful," a colorful name full of promise for the new company.

I've had SPlus on my Linux box for a little over a week now, and it's time to release some first and second impressions on this product. First, a little historical background. SPlus is the result of the language developed by Bell Labs (the patents and copyrights now owned by Lucent Technologies), called simply "S," first appearing in 1981. S was designed to fill the role of a strictly data analysis programming language. MathSoft is currently, or at least according to my current information, the sole licensee of the S language from Lucent. From the original S, MathSoft developed SPlus which is the name of the language used in the package.

SPlus as a package boasts the ability to use C language modules to do tasks that S was not designed to perform. This is handy if you have data formats from home grown software for which no conversion module exists. Just write your own module and plug it into SPlus.

SPlus arrived in a small box that felt like lead, surprising weight for its apparent volume. The reason for the weight soon became apparent since the box was actually crammed with a full set of softcover-bound manuals as well as the software itself on a single CD. No popcorn chips appeared! The software actually comes with 4 large programming and user's manuals, a small pamphlet of installation instructions, and a small quick start guide.

I almost felt like I was back at school browsing through IBM mainframe manual sets in the library (This space left intentionally blank.)! The most current addendum and release notes are on the CD itself as of the time the CD was pressed. I have to chalk up a couple of points on the thoughtfulness of the SPlus technical staff, since it seems for most software manuals of this caliber are only on the installation media, if at all even on multi-thousand dollar software suites.

Print manuals are almost always "optional" and always expensive these days. It's cheap to put it all on CD and then expect your clients to either print it out or stare at the computer monitor straining already strained eyes while wishing to be comfortable on a couch elsewhere reading a paper book. Omitting printed manuals may be cheap, but it's not good business. As for the manuals themselves, they are quite well written, and even someone like myself who hasn't done serious data analysis in over 2 years can dive right in.

The one drawback to the installation process I had trouble with is the need for a license key to enable the software. For this you have to run a small program called HOSTINFO, write down the information it spits out and then send that to the licensing people at MathSoft for them to calculate and return your key. While this is not unusual, it was all very bothersome and I had to ride them a bit to get the key. All told, it took about a week to actually get my license key to unlock the software. To be fair to MathSoft however, they did tell me that my request e-mail had never arrived and they would look into problems with the e-mail server. I should also mention that I also tried to call them directly twice and had their "press one if you..." call system hang up on me twice. I may have called at the wrong time because the PR person I contacted also said their call system was giving them fits.

So with my hard-won license key I finally opened the software and begin playing around with SPlus. SPlus comes in two forms, both available after the installation. One is the the standard command line interface similar to a shell prompt and the other is a full graphical interface with multiple windows and the works. The release notes on the CD claim you need at least 64 Mb of RAM for the SPlus license server and backend software alone, and an additional 32 Mb per user. For a single user at their workstation, therefore, you need at least 96 Mb available for the software to run properly. My own system which is an AMD K6-2/400 with 112 Mb system RAM can run simple analysis adequately, but it bogs down into some thrashing when I do something more complex than X,Y plotting.

The graphical interface was written in Java and a copy of the Java SDK version it was written for was included on the installation CD. The graphical interface by itself, without any analysis running, takes up nearly 57 Mb of RAM according to top. SPlus itself seems to be fairly easy on the CPU, but is a HUGE memory hog. I wouldn't recommend doing any kind of serious analysis with it on less than 128 Mb of system RAM, and would urge you to have at least 192 Mb if you want to do anything else of consequence at the same time. If you do not run the graphical interface, you can save some serious memory since Java only starts when you pop up a graphical window. For those apps that do not need the graphical simulations and graphics, I would definitely recommend not running in graphics mode at all.

I need to add a note here to those users like myself with small (17" and smaller) monitors. The SPlus graphs are difficult to see clearly once you get more than 2 side by side. When you put 6 or more on the same window, the graphs become virtually impossible to use. Having said that, this more of a problem with display size and resolution than a fault with the software itself. This is pretty much something all people using XFree or X11 have had to deal with, and as a result, most workstations that are dedicated for this kind of work have big monitors. As such, I would recommend such a monitor (19" and larger) if you are going to be doing any kind of graphical data analysis not only with SPlus, but other software as well.

SPlus can import ASCII and SAS type formats into its own special data format from which you can do your data massaging. If you use FITS, you will have to program a C module for SPlus so it can read and interpret FITS format as well.

After about a week of daily usage and probing and prodding, I still have yet barely scratched the surface of what SPlus can do. Many functions and abilities remain untested, and since this is such a complex software package: I am still working to get to the top of the learning curve. So look for more articles soon on this fascinating piece of software.

MathSoft's corporate Web site can be found at http://www.mathsoft.com Insightful and SPlus can be found at http://www.insightful.com. White papers on the S language as developed by the original Bell Labs can be found at http://www.lucent.com.

Ross Randers, wolf_fire@ithink.net





   Page 1 of 1