Linda (język programowania)

język programowania

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 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

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
  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