Scheme(ID:694/sch003)(originally "Schemer", by analogy with Planner and Conniver.) G.L. Steele & G.J. Sussman, 1975. A LISP dialect, small and uniform, with clean semantics. Scheme is applicative-order and lexically scoped, and treats both functions and continuations as first-class objects. is a statically scoped and properly tail-recursive dialect of the LISP programming language invented by Guy Lewis Steele Jr. and Gerald Jay Sussman. It was designed to have an exceptionally clear and simple semantics and few different ways to form expressions. A wide variety of programming paradigms, including imperative, functional, and message passing style, find convenient expression in SCHEME. SCHEME has lexical scoping, uniform evaluation rules, and uniform treatment of data types. It does not have the concept of pointers, uninitialized variables, specialized looping constructs, or explicit storage management. In SCHEME all data types are equal. What one can do to one data type, one can do to all data types. There are seven kinds of expressions: constant, variable reference, procedure creation, procedure application, conditional, assignment, and sequence. Numbers are especially interesting in that an integer is a rational and a real is a complex. SCHEME requires no looping constructs. Any function which calls itself in the "Tail" position is just a loop. SCHEME has several important advantages: it's elegantly simple in that regular structure and trivial syntax avoids "special case" confusion. It's expressiveness means that one spends little time trying to work around the language, it concentrates on what they want say rather than on how to say it. It supports a variety of styles (including OO; allows users to better match their solution style to the style of the problems to be solved. Structures: Related languages
References: in SIGPLAN Notices 21(12) December 1986 view details in SIGPLAN Notices 21(12) December 1986 view details in SIGPLAN Notices 21(12) December 1986 view details in SIGPLAN Notices 21(12) December 1986 view details in SIGPLAN Notices 21(12) December 1986 view details R. Kent Dybvig, "The Scheme Programming Language", Prentice-Hall, Englewood Cliffs, N.J., 1987, pp. 242. Scheme is dialect of Lisp featuring static scoping, first-class (typed) procedures, objects and continuations. It still suffers from parenthitis. There is a function \* The book assumes knowledge of Lisp or at least of programming and list processing. It is a straightforward explanation of Scheme, for the practical programmer. Extract: Review of language James R. McGraw, "The VAL language: description and analysis", ACM TOPLAS, 4, #1, pp. 44-82. Jan. 1982, VAL is a side effect free language, based on expressions and non-recursive functions. Normally the language is single-definition, but in a fairly complex for...do...iter construct redefinition is allowed to handle iteration. Its main features are explained using a single example, quad integration. in SIGPLAN Notices 21(12) December 1986 view details in SIGPLAN Notices 21(12) December 1986 view details Resources |