Scheme |
![](//upload.wikimedia.org/wikipedia/commons/thumb/3/39/Lambda_lc.svg/150px-Lambda_lc.svg.png) |
|
Paradigma | többelvű: funktionális, procedurális, meta |
Jellemző kiterjesztés | .scm, .ss |
Megjelent | 1975 |
Tervező | Guy L. Steele, Gerald Jay Sussman |
Utolsó kiadás | R6RS (ratified standard) (2007) |
Típusosság | erősen típusos, dinamikus kötés |
Dialektusok | T |
Megvalósítások | sok, lásd még: Category:Scheme implementations |
Hatással volt rá | Lisp, ALGOL, MDL |
Befolyásolt nyelvek | Common Lisp, Dylan, EuLisp, Haskell, Hop, JavaScript, Kernel, Lua, R, Ruby, Clojure , Racket |
Weboldal |
A Scheme programozási nyelv a Lisp nyelvcsalád egyik tagja, illetve a Lisp egyik nyelvjárása (dialektusa). A Scheme tervezői arra törekedtek, hogy a Lispből minden fölösleges tulajdonságot kigyomláljanak, és egy egyszerű, kevés szabállyal leírható, de erőteljes nyelvet hozzanak létre. Például a Scheme-ben egyetlen egységes névtérben találhatók a függvények és a változók. A nyelv precíz leírása és egyszerűsége miatt az oktatásban jól használható; alkalmazását valós problémák megoldására viszont némileg akadályozza, hogy kevés a szabványos eljárás, nincsenek kiterjedt szabványos könyvtárak. Ezt a hiányosságot azonban az utóbbi években igyekeznek pótolni (SRFI = Scheme Request for Implementation) – ma már a legtöbb Scheme implementáció tartalmaz több-kevesebb SRFI-megvalósítást.