Scheme
Scheme – termin pochodzący z języka angielskiego, używany w wielu dyscyplinach naukowych i technicznych. Oznacza on plan, układ, system lub schemat, a także nazwę konkretnego języka programowania oraz pojęcie w geometrii algebraicznej. Poniżej przedstawiono najważniejsze znaczenia tego słowa.
1. Scheme jako język programowania
Język programowania Scheme jest funkcjonalnym dialektem języka Lisp, opracowanym na początku lat 1970 w ramach projektu MIT. Jego twórcami są Guy L. Steele Jr. oraz Gerald Jay Sussman. Scheme został zaprojektowany jako prosty i elegancki system, w którym podstawowe konstrukcje językowe są bardzo małe, a wszystkie pozostałe elementy są definiowane w samym języku.
Kluczowe cechy Scheme:
- minimalistyczna składnia oparta na s‑ekspresjach;
- pełne wsparcie dla funkcji wyższego rzędu;
- pierwsze wprowadzenie garbage collection w implementacji języka;
- statyczny i dynamiczny zakres zmiennych (lexical scoping);
- obsługa kontynuacji poprzez
call/cc.
Najważniejsze standardy:
- R5RS – Fifth Revised Report, publikowany w 1998 r.;
- R6RS – Sixth Revised Report, opublikowany w 2007 r.;
- R7RS – najnowszy standard, podzielony na dwa części: small i large.
Przykładowy kod w Scheme
(define (factorial n)
(if (= n 0)
1
(* n (factorial (- n 1)))))
Powyższy fragment definiuje funkcję obliczającą silnię przy użyciu rekurencji – typowego podejścia w językach funkcyjnych.
2. Scheme w matematyce – schematy w geometrii algebraicznej
W geometrii algebraicznej pojęcie schematu (ang. scheme) zostało wprowadzone przez Alexandre’a Grothendiecka w latach 1960. Schematy umożliwiają uogólnienie pojęcia krzywej i powierzchni algebraicznej, łącząc topologię i algebrę w jedną strukturę.
Główne elementy teorii schematów:
- przestrzeń spektralna pierścienia;
- strukturę sheaf (szefu) algebr;
- morfizmy schematów, które zachowują zarówno strukturę topologiczną, jak i algebraiczną.
Schematy odgrywają kluczową rolę w dowodach takich jak twierdzenie Mordella czy twierdzenie Faltinga, a także w nowoczesnych badaniach nad modularyzacją i teorią warstw.
3. Scheme jako plan, projekt lub manipulacja
W języku potocznym scheme oznacza plan lub projek o określonej strukturze. Często używa się go w kontekście działalności przedsiębiorstw, rządów lub organizacji pozarządowych, np. „plan rozwoju gospodarki” czy „strategia marketingowa”.
Negatywny odcień tego słowa wiąże się z pojęciem schemat (manipulacja) – działanie mające na celu oszukanie innych, często określane jako kłamstwo lub oszustwo. W literaturze znajdziemy przykłady takich schematów w powieściach kryminalnych oraz w historii politycznej.
4. Scheme w kryptografii
W kryptografii termin scheme odnosi się do zestawu algorytmów i protokołów definiujących sposób szyfrowania, podpisywania cyfrowego lub wymiany kluczy. Przykłady:
- schemat RSA – oparty na problemie faktoryzacji liczb całkowitych;
- schemat ElGamal – wykorzystujący logarytm dyskretny;
- schemat HMAC – zapewniający integralność i uwierzytelnienie wiadomości.
5. Zastosowania w edukacji i informatyce
W kontekście edukacji schematy (plany nauczania, diagramy przepływu) służą do wizualizacji i organizacji wiedzy. W informatyce nieformalnie określa się nimi diagramy funkcjonalne, modele danych czy architekturę oprogramowania.