Scheme is a dialect of Lisp stressing conceptual elegance and simplicity. It returns to the mathematical foundation of lambda calculus from which Lisp originated. Scheme is specified in the Revised^5 Report on Scheme (R5RS) and IEEE standard P1178. Scheme is far smaller than Common Lisp; the specification is about 50 pages, compared to Common Lisp's 1300 page draft standard. Scheme advocates often find it amusing that the entire Scheme standard is shorter than the index to Guy Steele's "Common Lisp: the Language, 2nd Edition". Scheme is often used in computer science curricula and programming language research due to its ability to represent many programming abstractions with its simple primitives. Common Lisp is often used for real world programming due to its large library of utility functions, a standard object-oriented programming facility (CLOS), and a sophisticated condition handling system. However, certain die-hard Scheme programmers (or "Schemers") have developed large Scheme systems including libraries which provide much if not all of the functionality of Common Lisp, including CLOS. Development and discussion are ongoing to develop a recommended library (or libraries) of extensions to the Scheme language to bring such efforts closer in line with each other and to have semi-standardized behavior.