2005-02-15

GNU data language

GDL is a free IDL (Interactive Data Language) compatible incremental compiler (ie. runs IDL programs) by, mostly, Marc Schellens. Check out its homepage at
http://gnudatalanguage.sourceforge.net. IDL is a registered trademark of Research Systems Inc and is what I use at work for all my data analysis and plotting, its tremenously useful. Its fast and powerful, allows compile-on-the-fly, etc... well, read about it on http://www.rsinc.com/idl/ if you want to. The only thing wrong with IDL (apart from needing /cell_fill on polar stereo projections...) is that its quite expensive. Which means that sharing code with people that don't have it won't work. But along comes GDL... or at least, its coming.

The current (0.8.8) version says it features:

Full syntax compatibility with IDL 6.0

ALL IDL language elements are supported, including:


* Objects,
* Pointers,
* Structs,
* Arrays,
* System variables,
* Common blocks,
* Assoc variables,
* All operators,
* All datatypes,
* _EXTRA, _STRICT_EXTRA and _REF_EXTRA keywords...


The file input output system is fully implemented
(Exception: For formatted I/O the C() sub-codes are not supported yet)

Which all sounds very nice. I don't need it, because I have IDL, but I decided to try downloading it and seeing if I could make it work. First I needed to download plplot, which it relies on, and make that; OK. Then make GDL. This proved a bit problematic as I lacked a few things (hdf; ImageMagick; etc) that it didn't actually need but wanted. Sadly it wasn't clever enough to turn these off in the configure and I had to manually, but having done that I get an executable that runs and understands usual IDL syntax. Some things clearly work; others (.run; the normal-random-generator randomn) don't. Plotting to the z-buffer didn't work.

So it looks to me that if you can't afford IDL, it might well be worth looking at GDL, but probably some rather important bits are missing at the moment.

3 comments:

Anonymous said...

I am a developer for GDL which is continually being updated. For example, RANDOMN will be implemented shortly and will be available at the GDL CVS site (http://sourceforge.net/cvs/?group_id=97659).

If you have need for additional functions or procedures, please tell us through the GDL tracker site (http://sourceforge.net/tracker/?group_id=97659).

William M. Connolley said...

Thanks for the comment. I will make some requests via sourceforge. And (if I didn't way it in the post) thanks for working on GDL, I think it will be really useful. I make graphs for wikipedia using IDL. It would be really nice if others could reproduce those, using GDL. So I plan to check a few against what GDL can do.

Anonymous said...

GDL for Windows users is available using coLinux.

More here:
http://hesperia.gsfc.nasa.gov/colinux/