Jump to content

Sather

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 81.56.99.20 (talk) at 13:11, 3 December 2005. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Sather is an object-oriented programming language. It originated circa 1990 at the International Computer Science Institute at the University of California, Berkeley, developed by an international team led by Steve Omohundro. It supports garbage collection and generics by subtypes.

It is probably best to see it as an object-oriented language, with many ideas borrowed from Eiffel. Even the name is inspired by Eiffel; the Sather Tower is a recognizable landmark at Berkeley. Sather also takes inspiration from other programming languages and paradigms: iterators, design by contract, abstract classes, multiple inheritance, anonymous functions, operator overloading, contravariant type system. Some of these features are normally only found in functional programming languages.

The original Berkeley implementation is now maintained by many people, not all at Berkeley, and has been adopted by the Free Software Foundation. There are at least two other implementations: Sather-K from the University of Karlsruhe, and Sather-W from the University of Waikato.

Sather is implemented as a compiler to C, i.e., the compiler does not output object or machine code, but takes Sather source code and generates C source code as an intermediate language. Optimizing is by the C compiler, Sather code often performs better than the corresponding C++ code, and the generated C code can always be optimized by hand.

Sather can be used under either the GNU GPL or LGPL.

Hello World

class HELLO_WORLD is
 main is 
  #OUT+"Hello World\n"; 
 end; 
end;

External link