Version 2.1.3  

S-Lang Library Information Page

 

Binaries for Cygwin are available.New!
S-Lang 2.1.3 has been released.
Discover the beauty of Complex Numbers with fztopng, an slsh script that takes the complexity out of Complex Domain Coloring.
A new graphing module based upon Grace is available.


S-Lang is a multi-platform programmer's library designed to allow a developer to create robust multi-platform software. It provides facilities required by interactive applications such as display/screen management, keyboard input, keymaps, and so on. The most exciting feature of the library is the slang interpreter that may be easily embedded into a program to make it extensible. While the emphasis has always been on the embedded nature of the interpreter, it may also be used in a stand-alone fashion through the use of slsh, which is part of the S-Lang distribution.

Unlike many interpreters, the S-Lang interpreter supports all of the native C integer types (signed and unsigned versions of char, short, int, long, and long long), and both single and double precision types, as well as a double precision complex type. Other data types supported by the interpreter include strings, lists, associative arrays (hashes), user-defined structures, and multi-dimensional arrays of any data-type.

The S-Lang interpreter has very strong support for array-based operations making it ideal for numerical applications.

    i = where (hypot(X,Y) <= 1);
    X = X[i];
    Y = Y[i];
is a filtering operation that removes all points from a pair of (X,Y) arrays that fall outside the unit circle. Moreover, the native support for array-based operations mean that such code will execute at the speed of compiled code even though the code is executed by the interpreter. US Passport 123

For more information about the library, read the online documentation.


This page was last updated Jan 21, 2008 by John E. Davis.
To comment on it or the material presented here, send email to jed at jedsoft org.
Valid HTML 4.01! Made with JED Viewable With Any Browser