Welcome to the Dictionary of Programming Languages, a compendium
of computer coding methods assembled to provide information and
aid your appreciation for computer science history.
Browse the dictionary by clicking on a section:
A
B
C
D
E
F
G
H
I
JK
L
M
N
O
P
QR
S
T
UV
WXYZ+
Get a full dump of the dictionary:
List of Names
Short Form
Full Form
-
S
- Language type:
M - Mathematical or Simulation
- Description:
S is an interpreted, high-level procedural
language designed and used for statistics,
numerical modeling, data analysis, and
simulation.
The structure of an S program is quite simple:
it consists of statements. Some of the
statements might define functions, which
allows the S programmer to build up
complicated modular programs. The expression
syntax of S is very sophisticated and
rich. Array and sequence handling are
supported with a set of compact primitives
that allow complicated data manipulation
to be built fairly easily.
Like many interpreters, S permits evaluation
of code constructed on the fly. It also
has some limited facilities for reflection
and expression manipulation.
By default, all global variables in S are
persistent.
They get saved at each assignment to
one of several data areas.
Function definitions are also persistent,
saved in the same fashion.
The newest version of S, Version 4,
supports object-oriented programming
and event-driven programming.
S is sold commmercially as 'S-Plus' by
MathSoft, Inc. It is available for all
Unix and PC platforms. Some documentation
can be found on-line, but available textbooks
and reference documents distributed with
the commercial implementation are better.
- Origin:
R.A. Becker et al, 1977-84.
- See Also:
- Remarks:
The initial goal of S, according to its
primary inventor, was to provide powerful
interactive statistics and data analysis.
The desire to create an interactive system
arose from the desire of the statistics
researchers at Bell Laboratories to be
able to explore data and analyze it in
various and sundry ways without the overhead
and difficulty of writing FORTRAN programs.
The initial implementation of S was in Fortran,
later implementations and current ones are
in C.
S and S-Plus both offer a huge library of
statistics, graphics, data-handling,
and other functions. Textbooks and
on-line technical reports and archives
provide additional resources and
specialized functionality.
- Links:
-
-
- Date:
- Sample code:
# Some S code to plot concentric convex hulls
# around some data, from the documentation for
# the chull function.
drawhull <- function(xvec, yvec, ltype)
{
polygon(xvec, yvec, density=0, lty=ltype)
}
p <- chull(corn.rain, corn.yield, peel=T)
which <- rep(seq(p$count), p$count)
s <- split(p$hull, which)
plot(corn.rain, corn.yield, pch="X")
for(i in seq(s)) {
j <- s[[i]]
if (length(j) > 2)
drawhull(corn.rain[j], corn.yield[j], i)
}
Descriptions in this dictionary are ©1997-99 Neal Ziring. Some
examples copyright of their respective authors. Some
technologies and languages are trademarked. Permission to
copy descriptions is granted as long as authorship credit is preserved.
Comments on this dictionary, corrections and suggestions, are all welcome.
Please use email, the address is ziring@home.com
[Ziring MicroWeb Home]
[Dictionary Start]
[Sign Guestbook]
Dictionary and script maintained by Neal Ziring, last major modifications 3/18/98. Most recent
additions to dictionary and master list, 1/00.