Przejdź do treści

Scheme

Scheme jest jednym z dwóch głównych dialektów języka programowania Lisp, obok Common Lisp. Został stworzony w 1975 roku przez Guya L. Steele'a i Geralda Jaya Sussmana na Massachusetts Institute of Technology (MIT) jako bardziej minimalistyczna, czysta i elegancka alternatywa dla ówczesnego Lispu.

Kluczowe cechy

  1. Funkcyjność: Scheme jest czystym językiem funkcyjnym, z silnym naciskiem na niezmienność i rekurencję zamiast pętli.

  2. Minimalizm: Scheme jest znany z bardzo małej liczby wbudowanych funkcji i składni, co czyni go łatwym do nauczenia się, ale także wymaga więcej pracy od programistów, którzy muszą często sami tworzyć potrzebne im narzędzia.

  3. First-class functions i lexical scoping: funkcje w Scheme są "obiektami pierwszej klasy", co oznacza, że mogą być przekazywane jako argumenty do innych funkcji, zwracane jako wartości i przypisywane do zmiennych. Lexical scoping (czyli zakres leksykalny) oznacza, że zmienne są dostępne wewnątrz funkcji, w której zostały zdefiniowane, co pomaga w utrzymaniu czystego i zrozumiałego kodu.

  4. Makro system: Scheme posiada potężny system makr, który pozwala programistom na tworzenie nowych konstrukcji języka.

  5. Continuations: Scheme wspiera kontynuacje jako sposób na kontrolę przepływu programu, co pozwala na tworzenie skomplikowanych struktur sterowania, takich jak ko-rutyny, wielowątkowość i obsługę wyjątków.

Scheme jest często używany w środowiskach akademickich jako narzędzie do nauczania koncepcji programowania funkcyjnego i jest podstawą wielu innych języków, takich jak Clojure i Racket.

Popularność języka

Wykres popularności języka Scheme