Loglan'82 – uniwersalny obiektowy język programowania, stworzony w Instytucie Informatyki Uniwersytetu Warszawskiego w latach 1977–1982 przez zespół kierowany przez Andrzeja Salwickiego.
Cechy i autorzy Składnia języka wzoruje się na Pascalu. Semantyka zawiera konstrukcje klasyczne oferowane przez języki z rodziny Algol oraz nowsze: klasy i dziedziczenie klas, współbieżność i obsługa wyjątków. Zawiera m.in. do dziś zapomniane rozwiązanie problemu wiszących referencji opracowane przez Antoniego Kreczmara. W 1988 Bolesław Ciesielski zaproponował i zrealizował własną koncepcję obiektów aktywnych. Narzędziem (obiektowym) komunikacji i synchronizacji obiektów – procesów jest obce wywołanie metody innego obiektu. Koncepcja ta wyróżnia się ponadto ujednoliceniem formy postaci programów współbieżnych i rozproszonych. Autorem maszyny wirtualnej Loglanu 82 był Antoni Kreczmar.
Wśród współtwórczyń Loglanu 82 znajdowały się, m.in.: Hanna Oktaba, , Danuta Szczepańska-Wasersztrum.
Język Loglan'82 nie ma związku z mówionym językiem sztucznym loglan.
Loglan'82 charakteryzuje się szeregiem innowacyjnych cech, które odróżniają go od innych języków programowania. Jedną z kluczowych właściwości jest możliwość formalnej specyfikacji programów, umożliwiająca precyzyjne definiowanie założeń oraz efektów działania algorytmów. Język ten posiada silne typowanie, co pozwalało na wykrywanie i eliminowanie wielu błędów na etapie kompilacji. Jest on również zaprojektowany z myślą o obsłudze współbieżności, dzięki czemu nadaje się do implementacji systemów wielozadaniowych. Pomimo że w latach 80. programowanie obiektowe nie było jeszcze powszechnie stosowane, Loglan'82 zawierał pewne jego elementy, co świadczyło o jego nowatorskim charakterze.
Przykłady programów napisanych w języku Loglan'82 Loglan'82 jest wykorzystywany do implementacji różnych algorytmów i struktur obliczeniowych, zarówno prostych, jak i bardziej zaawansowanych. Wśród przykładów programów napisanych w tym języku znajdują się: Bisekcja – algorytm służący do znajdowania pierwiastków funkcji metodą połowienia przedziału. Potęgowanie binarne – efektywna metoda obliczania potęg liczby w czasie logarytmicznym. Sortowanie bąbelkowe – klasyczny algorytm sortowania, polegający na wielokrotnym porównywaniu i zamianie sąsiednich elementów. Sortowanie przez wstawianie (insertionsort) – algorytm porządkujący dane poprzez sukcesywne wstawianie elementów w odpowiednie miejsce. Iloczyn skalarny – operacja matematyczna stosowana w algebrze liniowej, pozwalająca na obliczanie wartości liczbowej dwóch wektorów. Mnożenie macierzy – podstawowa operacja algebraiczna wykorzystywana w obliczeniach numerycznych i analizie danych.
Przypisy
Bibliografia
Kategoria:Obiektowe języki programowania