135 lines
13 KiB
HTML
135 lines
13 KiB
HTML
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
|
|
<html>
|
|
<!-- Generated from TeX source by tex2page, v 4o4,
|
|
(c) Dorai Sitaram, http://www.cs.rice.edu/~dorai/tex2page -->
|
|
<head>
|
|
<title>
|
|
Revised^5 Report on the Algorithmic Language Scheme
|
|
</title>
|
|
<link rel="stylesheet" type="text/css" href="r5rs-Z-C.css" title=default>
|
|
<meta name=robots content="noindex,follow">
|
|
</head>
|
|
<body>
|
|
|
|
<p><div class=navigation>[Go to <span><a href="r5rs.html">first</a>, <a href="r5rs-Z-H-1.html">previous</a></span><span>, <a href="r5rs-Z-H-3.html">next</a></span> page<span>; </span><span class=disable>contents</span><span><span class=disable>; </span><a href="r5rs-Z-H-15.html#%_index_start">index</a></span>]</div><p>
|
|
|
|
<a name="%_chap_Temp_2"></a>
|
|
<h1 class=chapter>
|
|
<div class=chapterheading> </div><p>
|
|
Contents</h1><p>
|
|
|
|
<p><p> <a name="%_toc_start"><p><b>
|
|
<a name="%_toc_%_chap_Temp_1" href="r5rs-Z-H-1.html#%_chap_Temp_1">Summary</a></b><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_Temp_3" href="r5rs-Z-H-3.html#%_chap_Temp_3">Introduction</a></b><br>
|
|
<a name="%_toc_%_sec_Temp_4" href="r5rs-Z-H-3.html#%_sec_Temp_4">Background</a><br>
|
|
<a name="%_toc_%_sec_Temp_5" href="r5rs-Z-H-3.html#%_sec_Temp_5">Acknowledgements</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_1" href="r5rs-Z-H-4.html#%_chap_1">1 Overview of Scheme</a></b><br>
|
|
<a name="%_toc_%_sec_1.1" href="r5rs-Z-H-4.html#%_sec_1.1">1.1 Semantics</a><br>
|
|
<a name="%_toc_%_sec_1.2" href="r5rs-Z-H-4.html#%_sec_1.2">1.2 Syntax</a><br>
|
|
<a name="%_toc_%_sec_1.3" href="r5rs-Z-H-4.html#%_sec_1.3">1.3 Notation and terminology</a><br>
|
|
<a name="%_toc_%_sec_1.3.1" href="r5rs-Z-H-4.html#%_sec_1.3.1">1.3.1 Primitive, library, and optional features</a><br>
|
|
<a name="%_toc_%_sec_1.3.2" href="r5rs-Z-H-4.html#%_sec_1.3.2">1.3.2 Error situations and unspecified behavior</a><br>
|
|
<a name="%_toc_%_sec_1.3.3" href="r5rs-Z-H-4.html#%_sec_1.3.3">1.3.3 Entry format</a><br>
|
|
<a name="%_toc_%_sec_1.3.4" href="r5rs-Z-H-4.html#%_sec_1.3.4">1.3.4 Evaluation examples</a><br>
|
|
<a name="%_toc_%_sec_1.3.5" href="r5rs-Z-H-4.html#%_sec_1.3.5">1.3.5 Naming conventions</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_2" href="r5rs-Z-H-5.html#%_chap_2">2 Lexical conventions</a></b><br>
|
|
<a name="%_toc_%_sec_2.1" href="r5rs-Z-H-5.html#%_sec_2.1">2.1 Identifiers</a><br>
|
|
<a name="%_toc_%_sec_2.2" href="r5rs-Z-H-5.html#%_sec_2.2">2.2 Whitespace and comments</a><br>
|
|
<a name="%_toc_%_sec_2.3" href="r5rs-Z-H-5.html#%_sec_2.3">2.3 Other notations</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_3" href="r5rs-Z-H-6.html#%_chap_3">3 Basic concepts</a></b><br>
|
|
<a name="%_toc_%_sec_3.1" href="r5rs-Z-H-6.html#%_sec_3.1">3.1 Variables, syntactic keywords, and regions</a><br>
|
|
<a name="%_toc_%_sec_3.2" href="r5rs-Z-H-6.html#%_sec_3.2">3.2 Disjointness of types</a><br>
|
|
<a name="%_toc_%_sec_3.3" href="r5rs-Z-H-6.html#%_sec_3.3">3.3 External representations</a><br>
|
|
<a name="%_toc_%_sec_3.4" href="r5rs-Z-H-6.html#%_sec_3.4">3.4 Storage model</a><br>
|
|
<a name="%_toc_%_sec_3.5" href="r5rs-Z-H-6.html#%_sec_3.5">3.5 Proper tail recursion</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_4" href="r5rs-Z-H-7.html#%_chap_4">4 Expressions</a></b><br>
|
|
<a name="%_toc_%_sec_4.1" href="r5rs-Z-H-7.html#%_sec_4.1">4.1 Primitive expression types</a><br>
|
|
<a name="%_toc_%_sec_4.1.1" href="r5rs-Z-H-7.html#%_sec_4.1.1">4.1.1 Variable references</a><br>
|
|
<a name="%_toc_%_sec_4.1.2" href="r5rs-Z-H-7.html#%_sec_4.1.2">4.1.2 Literal expressions</a><br>
|
|
<a name="%_toc_%_sec_4.1.3" href="r5rs-Z-H-7.html#%_sec_4.1.3">4.1.3 Procedure calls</a><br>
|
|
<a name="%_toc_%_sec_4.1.4" href="r5rs-Z-H-7.html#%_sec_4.1.4">4.1.4 Procedures</a><br>
|
|
<a name="%_toc_%_sec_4.1.5" href="r5rs-Z-H-7.html#%_sec_4.1.5">4.1.5 Conditionals</a><br>
|
|
<a name="%_toc_%_sec_4.1.6" href="r5rs-Z-H-7.html#%_sec_4.1.6">4.1.6 Assignments</a><br>
|
|
<a name="%_toc_%_sec_4.2" href="r5rs-Z-H-7.html#%_sec_4.2">4.2 Derived expression types</a><br>
|
|
<a name="%_toc_%_sec_4.2.1" href="r5rs-Z-H-7.html#%_sec_4.2.1">4.2.1 Conditionals</a><br>
|
|
<a name="%_toc_%_sec_4.2.2" href="r5rs-Z-H-7.html#%_sec_4.2.2">4.2.2 Binding constructs</a><br>
|
|
<a name="%_toc_%_sec_4.2.3" href="r5rs-Z-H-7.html#%_sec_4.2.3">4.2.3 Sequencing</a><br>
|
|
<a name="%_toc_%_sec_4.2.4" href="r5rs-Z-H-7.html#%_sec_4.2.4">4.2.4 Iteration</a><br>
|
|
<a name="%_toc_%_sec_4.2.5" href="r5rs-Z-H-7.html#%_sec_4.2.5">4.2.5 Delayed evaluation</a><br>
|
|
<a name="%_toc_%_sec_4.2.6" href="r5rs-Z-H-7.html#%_sec_4.2.6">4.2.6 Quasiquotation</a><br>
|
|
<a name="%_toc_%_sec_4.3" href="r5rs-Z-H-7.html#%_sec_4.3">4.3 Macros</a><br>
|
|
<a name="%_toc_%_sec_4.3.1" href="r5rs-Z-H-7.html#%_sec_4.3.1">4.3.1 Binding constructs for syntactic keywords</a><br>
|
|
<a name="%_toc_%_sec_4.3.2" href="r5rs-Z-H-7.html#%_sec_4.3.2">4.3.2 Pattern language</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_5" href="r5rs-Z-H-8.html#%_chap_5">5 Program structure</a></b><br>
|
|
<a name="%_toc_%_sec_5.1" href="r5rs-Z-H-8.html#%_sec_5.1">5.1 Programs</a><br>
|
|
<a name="%_toc_%_sec_5.2" href="r5rs-Z-H-8.html#%_sec_5.2">5.2 Definitions</a><br>
|
|
<a name="%_toc_%_sec_5.2.1" href="r5rs-Z-H-8.html#%_sec_5.2.1">5.2.1 Top level definitions</a><br>
|
|
<a name="%_toc_%_sec_5.2.2" href="r5rs-Z-H-8.html#%_sec_5.2.2">5.2.2 Internal definitions</a><br>
|
|
<a name="%_toc_%_sec_5.3" href="r5rs-Z-H-8.html#%_sec_5.3">5.3 Syntax definitions</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_6" href="r5rs-Z-H-9.html#%_chap_6">6 Standard procedures</a></b><br>
|
|
<a name="%_toc_%_sec_6.1" href="r5rs-Z-H-9.html#%_sec_6.1">6.1 Equivalence predicates</a><br>
|
|
<a name="%_toc_%_sec_6.2" href="r5rs-Z-H-9.html#%_sec_6.2">6.2 Numbers</a><br>
|
|
<a name="%_toc_%_sec_6.2.1" href="r5rs-Z-H-9.html#%_sec_6.2.1">6.2.1 Numerical types</a><br>
|
|
<a name="%_toc_%_sec_6.2.2" href="r5rs-Z-H-9.html#%_sec_6.2.2">6.2.2 Exactness</a><br>
|
|
<a name="%_toc_%_sec_6.2.3" href="r5rs-Z-H-9.html#%_sec_6.2.3">6.2.3 Implementation restrictions</a><br>
|
|
<a name="%_toc_%_sec_6.2.4" href="r5rs-Z-H-9.html#%_sec_6.2.4">6.2.4 Syntax of numerical constants</a><br>
|
|
<a name="%_toc_%_sec_6.2.5" href="r5rs-Z-H-9.html#%_sec_6.2.5">6.2.5 Numerical operations</a><br>
|
|
<a name="%_toc_%_sec_6.2.6" href="r5rs-Z-H-9.html#%_sec_6.2.6">6.2.6 Numerical input and output</a><br>
|
|
<a name="%_toc_%_sec_6.3" href="r5rs-Z-H-9.html#%_sec_6.3">6.3 Other data types</a><br>
|
|
<a name="%_toc_%_sec_6.3.1" href="r5rs-Z-H-9.html#%_sec_6.3.1">6.3.1 Booleans</a><br>
|
|
<a name="%_toc_%_sec_6.3.2" href="r5rs-Z-H-9.html#%_sec_6.3.2">6.3.2 Pairs and lists</a><br>
|
|
<a name="%_toc_%_sec_6.3.3" href="r5rs-Z-H-9.html#%_sec_6.3.3">6.3.3 Symbols</a><br>
|
|
<a name="%_toc_%_sec_6.3.4" href="r5rs-Z-H-9.html#%_sec_6.3.4">6.3.4 Characters</a><br>
|
|
<a name="%_toc_%_sec_6.3.5" href="r5rs-Z-H-9.html#%_sec_6.3.5">6.3.5 Strings</a><br>
|
|
<a name="%_toc_%_sec_6.3.6" href="r5rs-Z-H-9.html#%_sec_6.3.6">6.3.6 Vectors</a><br>
|
|
<a name="%_toc_%_sec_6.4" href="r5rs-Z-H-9.html#%_sec_6.4">6.4 Control features</a><br>
|
|
<a name="%_toc_%_sec_6.5" href="r5rs-Z-H-9.html#%_sec_6.5">6.5 <tt>Eval</tt></a><br>
|
|
<a name="%_toc_%_sec_6.6" href="r5rs-Z-H-9.html#%_sec_6.6">6.6 Input and output</a><br>
|
|
<a name="%_toc_%_sec_6.6.1" href="r5rs-Z-H-9.html#%_sec_6.6.1">6.6.1 Ports</a><br>
|
|
<a name="%_toc_%_sec_6.6.2" href="r5rs-Z-H-9.html#%_sec_6.6.2">6.6.2 Input</a><br>
|
|
<a name="%_toc_%_sec_6.6.3" href="r5rs-Z-H-9.html#%_sec_6.6.3">6.6.3 Output</a><br>
|
|
<a name="%_toc_%_sec_6.6.4" href="r5rs-Z-H-9.html#%_sec_6.6.4">6.6.4 System interface</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_7" href="r5rs-Z-H-10.html#%_chap_7">7 Formal syntax and semantics</a></b><br>
|
|
<a name="%_toc_%_sec_7.1" href="r5rs-Z-H-10.html#%_sec_7.1">7.1 Formal syntax</a><br>
|
|
<a name="%_toc_%_sec_7.1.1" href="r5rs-Z-H-10.html#%_sec_7.1.1">7.1.1 Lexical structure</a><br>
|
|
<a name="%_toc_%_sec_7.1.2" href="r5rs-Z-H-10.html#%_sec_7.1.2">7.1.2 External representations</a><br>
|
|
<a name="%_toc_%_sec_7.1.3" href="r5rs-Z-H-10.html#%_sec_7.1.3">7.1.3 Expressions</a><br>
|
|
<a name="%_toc_%_sec_7.1.4" href="r5rs-Z-H-10.html#%_sec_7.1.4">7.1.4 Quasiquotations</a><br>
|
|
<a name="%_toc_%_sec_7.1.5" href="r5rs-Z-H-10.html#%_sec_7.1.5">7.1.5 Transformers</a><br>
|
|
<a name="%_toc_%_sec_7.1.6" href="r5rs-Z-H-10.html#%_sec_7.1.6">7.1.6 Programs and definitions</a><br>
|
|
<a name="%_toc_%_sec_7.2" href="r5rs-Z-H-10.html#%_sec_7.2">7.2 Formal semantics</a><br>
|
|
<a name="%_toc_%_sec_7.2.1" href="r5rs-Z-H-10.html#%_sec_7.2.1">7.2.1 Abstract syntax</a><br>
|
|
<a name="%_toc_%_sec_7.2.2" href="r5rs-Z-H-10.html#%_sec_7.2.2">7.2.2 Domain equations</a><br>
|
|
<a name="%_toc_%_sec_7.2.3" href="r5rs-Z-H-10.html#%_sec_7.2.3">7.2.3 Semantic functions</a><br>
|
|
<a name="%_toc_%_sec_7.2.4" href="r5rs-Z-H-10.html#%_sec_7.2.4">7.2.4 Auxiliary functions</a><br>
|
|
<a name="%_toc_%_sec_7.3" href="r5rs-Z-H-10.html#%_sec_7.3">7.3 Derived expression types</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_Temp_6" href="r5rs-Z-H-11.html#%_chap_Temp_6">Notes</a></b><br>
|
|
<a name="%_toc_%_sec_Temp_7" href="r5rs-Z-H-11.html#%_sec_Temp_7">Language changes</a><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_Temp_8" href="r5rs-Z-H-12.html#%_chap_Temp_8">Additional material</a></b><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_Temp_9" href="r5rs-Z-H-13.html#%_chap_Temp_9">Example</a></b><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_Temp_10" href="r5rs-Z-H-14.html#%_chap_Temp_10">Bibliography</a></b><br>
|
|
<p><b>
|
|
<a name="%_toc_%_chap_Temp_11" href="r5rs-Z-H-15.html#%_chap_Temp_11">Alphabetic Index of Definitions of Concepts,
|
|
Keywords, and Procedures</a></b><br>
|
|
<p>
|
|
|
|
<p>
|
|
|
|
|
|
<p><div class=navigation>[Go to <span><a href="r5rs.html">first</a>, <a href="r5rs-Z-H-1.html">previous</a></span><span>, <a href="r5rs-Z-H-3.html">next</a></span> page<span>; </span><span class=disable>contents</span><span><span class=disable>; </span><a href="r5rs-Z-H-15.html#%_index_start">index</a></span>]</div><p>
|
|
|
|
</body>
|
|
</html>
|