Linda (język programowania)

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

Linda – język współpracujący z innymi językami programowania, wzbogacający je o możliwości tworzenia programów wykonywanych współbieżnie.

Stworzony został na Uniwersytecie Yale’a przez profesora Davida Gelerntera – wtedy jeszcze 23-letniego studenta. Nazwa „Linda” stanowi żartobliwe nawiązanie do języka programowania Ada, którego nazwa pochodzi od imienia Ady Lovelace (przez wielu uznawanej za pierwszą programistkę). W tym wypadku odwołuje się ona do kobiety o tym samym nazwisku, Lindy Lovelace, amerykańskiej aktorki filmów pornograficznych[1].

Język Linda to w praktyce zestaw funkcji umożliwiających współbieżne przetwarzanie danych, rozszerzający inne języki programowania (najczęściej spotykany jest w połączeniu z C oraz Fortranem: odpowiednio C-Linda i Fortran-Linda).

Model programistyczny[edytuj | edytuj kod]

Współbieżność w Lindzie realizowana jest w oparciu o koncepcję logicznie współdzielonej, rozproszonej pamięci. Takie podejście determinuje sposób komunikowania się ze sobą współbieżnych procesów. Wszystkie procesy posiadają bowiem dostęp do jednej, współdzielonej przestrzeni danych, w której mogą gromadzić dane i z której mogą zgromadzone dane odczytywać. Przestrzeń ta nazwana została przestrzenią krotek (ang. tuple space). Jeśli jeden z procesów chce się skomunikować z drugim, umieszcza odpowiednie dane w przestrzeni krotek, drugi natomiast pobiera je w dogodnej dla siebie chwili[2].

Język Linda definiuje następujące cztery operacje:

  • in – odczytanie i jednoczesne usunięcie krotki z przestrzeni krotek
  • rd – odczytanie krotki z przestrzeni krotek bez jej usunięcia
  • out – stworzenie krotki i jej umieszczenie w przestrzeni krotek
  • eval – uruchomienie procesu obliczeniowego oraz stworzenie krotki na podstawie wyniku i jej umieszczenie w przestrzeni krotek

Z punktu widzenia programisty nie ma adresów powiązanych z poszczególnymi krotkami, a o pobraniu krotki decyduje jedynie jej postać, to znaczy liczba, typ i zawartość pól.

Przypisy[edytuj | edytuj kod]

  1. David Gelernter's Romance With Linda. The New York Times.
  2. Sudhir Ahuja, Nicholas Carriero, David Gelernter. Linda and Friends. „Computer”. 19b (8), s. 26–34, Sierpień 1986. IEEE. DOI: 10.1109/mc.1986.1663305. 

Linki zewnętrzne[edytuj | edytuj kod]