Scheme

Scheme – Lisp šeimos programavimo kalba (dialektas). Sukurta Guy L. Steele ir Gerald Jay Sussman apie 1970 metus. Naudojama mokyti programavimo, dirbtinio intelekto tyrimams, bei kitiems moksliniams projektams.

 Skirtumai nuo kitų Lisp dialektų 
 Funkcijos dalinasi ta pačia vardų sritimi, kaip ir įprasti kintamieji. Pavyzdžiui, Common Lisp reikalauja naudoti #' prieš funkcijos vardą, norint gauti jos reikšmę; Scheme to nereikia.
 Pilnas skaitinių tipų rinkinys: neriboto tikslumo sveikieji skaičiai, trupmenos, slankaus kablelio skaičiai, kompleksiniai skaičiai.
 Minimali funkcijų biblioteka.
 Leksinis apgaubimas.
 Privalomas uodeginės rekursijos (tail recursion) palaikymas.
 Privaloma funkcijos call - with - current - continuaton palaikymas; tai labai galingas įrankis.

 Standartai 

Scheme kalba standartizuota RnRS dokumentais. Šiuo metu naujausias ruošiamas yra R7RS, o dauguma įgyvendinimų remiasi R4RS arba R5RS. Kiekvienas standartas numato sintaksę, sistemines funkcijas, duomenų tipus, bei rekomenduotinas bibliotekos funkcijas.

 Pavyzdys 
(define square
  (lambda (x)
    (expt x 2))

(display (map square '(1 2 3 4)))

Atspausdintų:
  (1 4 9 16)

 Programiniai įgyvendinimai 
 Chicken
 Guile
 JScheme 
 Kawa
 MIT Scheme yra vienas iš oficialiausių bei didžiausių įgyvendinimų,
 MzScheme  ir aplinka DrScheme

 Plačiau 
 R5RS standartas

Kategorija:Programavimo kalbos