Scheme

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Peršokti į: navigaciją, paiešką

Scheme yra 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ų[taisyti | redaguoti kodą]

  • 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[taisyti | redaguoti kodą]

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[taisyti | redaguoti kodą]

(define square
  (lambda (x)
    (expt x 2))
 
(display (map square '(1 2 3 4)))

Atspausdintų:

 (1 4 9 16)

Programiniai įgyvendinimai[taisyti | redaguoti kodą]

Plačiau[taisyti | redaguoti kodą]