Sather



Website: www.gnu.org/software/sather/

Proiectat de: Steve Omohundro


Sather este un limbaj de programare orientat pe obiecte.

Acesta a luat naștere în jurul anului 1990 la Institutul Internațional de Informatică (ICSI) de la Universitatea din California, Berkeley, dezvoltat de o echipă internațională condusă de Steve Omohundro.

Suportă colectarea gunoiului și generice pe subtipuri.

Inițial, s -a bazat pe Eiffel, dar a divergent, iar acum include mai multe caracteristici de programare funcțională.

Numele este inspirat de Eiffel; Turnul Sather este un reper recunoscut la Berkeley, numit după Jane Krom Sather, văduva lui Peder Sather, care a donat sume mari fundației universității.

Sather se inspiră, de asemenea, din alte limbaje și paradigme de programare: iteratori, proiectare prin contract, clase abstracte, moștenire multiplă, funcții anonime, supraîncărcare a operatorului, sistem de tip contravariant.

Implementarea originală Berkeley (ultima versiune stabilă 1.1 a fost lansată în 1995, nu mai este întreținută) a fost adoptată de Fundația Free Software, astfel încât a devenit GNU Sather.

Ultima versiune GNU stabilă (1.2.3) a fost lansată în iulie 2007, iar software -ul nu este în prezent menținut.

Au existat alte câteva variante: Sather-K de la Universitatea din Karlsruhe; Sather-W de la Universitatea din Waikato (implementarea versiunii Sather 1.3); Portul lui Peter Naulls al ICSI Sather 1.1 către RISC OS; și Psather, o versiune paralelă a ICSI Sather care abordează arhitecturi multiprocesor de acces de memorie neuniform, dar care prezintă un model de memorie partajat programatorului.

Fostul compilator ICSI Sather (acum GNU Sather) este implementat ca un compilator la C, adică, compilatorul nu iese pe obiect sau cod de mașină, dar ia codul sursă Sather și generează codul sursă C ca un limbaj intermediar.

Optimizarea este lăsată la compilatorul C.

Compilatorul GNU Sather, scris în Sather în sine, este licențiat dual sub GNU GPL & LGPL.