"What is Sather? Sather is an object oriented
language which designed to be simple, efficient, safe, and
non-proprietary. It aims to meet the needs of modern research
groups and to foster the development of a large, freely available,
high-quality library of efficient well-written classes for a wide
variety of computational tasks. It was originally based on Eiffel
but now incorporates ideas and approaches from several languages.
One way of placing it in the "space of languages" is to say that it
attempts to be as efficient as C, C++, or Fortran, as elegant and
safe as Eiffel or CLU, and to support higher-order functions as
well as Common Lisp, Scheme, or Smalltalk.
Sather has garbage collection, statically-checked strong
typing, multiple inheritance, separate implementation and type
inheritance, parameterized classes, dynamic dispatch, iteration
abstraction, higher-order routines and iters, exception handling,
assertions, preconditions, postconditions, and class invariants.
Sather code can be compiled into C code and can efficiently
link with C object files.
Sather has a very unrestrictive license aimed at
encouraging contribution to the public library without precluding
the use of Sather for proprietary projects." (from the
Sather FAQs)
"What is pSather? pSather is an extension of the
object oriented language Sather. It adds threads and
synchronization mechanisms to the language. Even though
pSather programs can run on distributed computer systems,
they offer shared memory across all threads." (from the pSather
FAQs)
"Sather-K is a modern object-oriented, imperative
programming language that is appropriate for use in teaching,
research, and industry. The language has its origin in Eiffel.
However, the design objective of Sather-K was to get rid of
all unnecessary constructions in the language. The result was a
language that is easy to learn and especially efficient in
translation and execution.
Sather-K integrates all features of the object-oriented
paradigm. Classes can implemented as generic, they can be embedded
in hierarchical structures (by subtyping), and they can reuse parts
of other classes. The concept of streams gives the opportunity of
easy navigation through highly pretty complex data structures.
Sather-K is type save, i.e. a lot of errors can be
detected (and removed) at compile time and do therefore not occur
at runtime as in other languages." (from the Sather-K home
page)