Sather.html

 
ca de en es fr it nl no pl pt ru ro fi sv tr vo


 

Sather jest obiektowo zorientowanym językiem programowania. Powstał około 1990 roku w Międzynarodowym Instytucie Informatyki (ang. International Computer Science Institute) na Uniwersytecie Kalifornijskim w Berkeley, rozwijany przez międzynarodowy zespół pod kierownictwem Steve'a Omohundro. Język obsługuje automatyczne zarządzanie pamięcią oraz programowanie generyczne poprzez podtypy.

Oryginalnie bazował on na języku Eiffel, ale teraz zawiera wiele elementów programowania funkcjonalnego. Sather czerpie inspirację również z innych języków programowania i paradygmatów: iteratory, kontrakty, klasy abstrakcyjne, wielokrotne dziedziczenie, funkcje anonimowe, przeciążanie operatorów, kontrawariantny system typowanie. Wiele z tych cech jest normalnie spotykana jedynie w językach funkcjonalnych.

Oryginalna implementacja Berkley jest w tej chwili utrzymywane przez wiele osób, nie tylko w Berkley, oraz została zaadaptowana przez Free Software Foundation. Istnieją również implementacje Sather-K z Uniwersytetu w Karlsruhe i Sather-W z Uniwersytetu w Waikato.

Sather jest zaimplementowany jako kompilator do kodu C, tzn. kompilator nie produkuje plików obiektowego czy kodu maszynowego, ale na podstawie kodu źródłowego Sather generuje kod źródłowy C jako pośredni język. Optymalizacja niskopoziomowa jest przeprowadzana przez kompilator C. Kod Sather często jest bardziej wydajny niż odpowiadający mu kod C++, a wygenerowany kod C może być dodatkowo ręcznie zoptymalizowany.

Sather jest rozprowadzany na podwójnej licencji: GNU GPL i LGPL.

edytuj Hello world

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

edytuj Przykład iteratorów

class MAIN is
  main is
    loop
     i := 1.upto!(10);
     #OUT + i + "\n";
    end;
  end;
end;

Ten program wyświetli liczby od 1 do 10.

edytuj Linki zewnętrzne

All Right Reserved © 2007, Designed by Stylish Blog.