Scheme (programming language): Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Greg Woodhouse
m (add "strict")
imported>Greg Woodhouse
(add "Hello, World" example)
Line 1: Line 1:
'''Scheme''' is [[functional language|functional]] programming language developed by [[Guy Lewis Steele, Jr.|Guy L. Steele]]. Both the language and the RABBIT compiler are described in his [http://library.readscheme.org/servlets/cite.ss?pattern=Ste-78b master's thesis]. Scheme is considered a dialect of [[LISP]], but it differs from other languages of the LISP family (notably [[Common LISP]]) in that it is strict, lexically scoped and designed to be small and efficient. Indeed, Scheme is frequently considered an instructional language, or at least a language designed for research rather than application development. In fact, the name Scheme is actually derived from a program named "Schemer" developed at the [[Massachusetts Institute of Technology|M.I.T.]] AI Lab. Another reason for this perception is that Scheme was designed to more faithfully implement [[Alonzo Church|Church's]] [[lambda calculus]] than did comparable languages at the time.
'''Scheme''' is [[functional language|functional]] programming language developed by [[Guy Lewis Steele, Jr.|Guy L. Steele]]. Both the language and the RABBIT compiler are described in his [http://library.readscheme.org/servlets/cite.ss?pattern=Ste-78b master's thesis]. Scheme is considered a dialect of [[LISP]], but it differs from other languages of the LISP family (notably [[Common LISP]]) in that it is strict, lexically scoped and designed to be small and efficient. Indeed, Scheme is frequently considered an instructional language, or at least a language designed for research rather than application development. In fact, the name Scheme is actually derived from a program named "Schemer" developed at the [[Massachusetts Institute of Technology|M.I.T.]] AI Lab. Another reason for this perception is that Scheme was designed to more faithfully implement [[Alonzo Church|Church's]] [[lambda calculus]] than did comparable languages at the time.
==Sample Programs==
===Hello World===
> (define (hello-world)
    (write "Hello, World!")
    (newline))
> (hello-world)
"Hello, World!"

Revision as of 11:22, 1 August 2007

Scheme is functional programming language developed by Guy L. Steele. Both the language and the RABBIT compiler are described in his master's thesis. Scheme is considered a dialect of LISP, but it differs from other languages of the LISP family (notably Common LISP) in that it is strict, lexically scoped and designed to be small and efficient. Indeed, Scheme is frequently considered an instructional language, or at least a language designed for research rather than application development. In fact, the name Scheme is actually derived from a program named "Schemer" developed at the M.I.T. AI Lab. Another reason for this perception is that Scheme was designed to more faithfully implement Church's lambda calculus than did comparable languages at the time.

Sample Programs

Hello World

> (define (hello-world)
    (write "Hello, World!")
    (newline))
> (hello-world)
"Hello, World!"