manual-Z-H-2.html 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <!--
  4. Generated from manual.tex by tex2page, v 2005-03-30
  5. (running on MzScheme 299.101, unix),
  6. (c) Dorai Sitaram,
  7. http://www.ccs.neu.edu/~dorai/tex2page/tex2page-doc.html
  8. -->
  9. <head>
  10. <title>
  11. The Incomplete Scheme 48 Reference Manual for release 1.3
  12. </title>
  13. <link rel="stylesheet" type="text/css" href="manual-Z-S.css" title=default>
  14. <meta name=robots content="noindex,follow">
  15. </head>
  16. <body>
  17. <div id=content>
  18. <div align=right class=navigation><i>[Go to <span><a href="manual.html">first</a>, <a href="manual-Z-H-1.html">previous</a></span><span>, <a href="manual-Z-H-3.html">next</a></span> page<span>; &nbsp;&nbsp;</span><span class=disable>contents</span><span><span class=disable>; &nbsp;&nbsp;</span><a href="manual-Z-H-13.html#node_index_start">index</a></span>]</i></div>
  19. <p></p>
  20. <a name="node_chap_Temp_2"></a>
  21. <h1 class=chapter>
  22. <div class=chapterheading>&nbsp;</div><br>
  23. <a href="#node_toc_node_chap_Temp_2">Contents</a></h1>
  24. <p><a name="node_toc_start"></a></p>
  25. <p><b>
  26. &nbsp; &nbsp; <a name="node_toc_node_chap_1"></a><a href="manual-Z-H-3.html#node_chap_1">1&nbsp;&nbsp;Introduction</a></b><br>
  27. </p>
  28. <p><b>
  29. &nbsp; &nbsp; <a name="node_toc_node_chap_2"></a><a href="manual-Z-H-4.html#node_chap_2">2&nbsp;&nbsp;User's guide</a></b><br>
  30. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_2.1"></a><a href="manual-Z-H-4.html#node_sec_2.1">2.1&nbsp;&nbsp;Command line arguments</a><br>
  31. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_2.2"></a><a href="manual-Z-H-4.html#node_sec_2.2">2.2&nbsp;&nbsp;Command processor</a><br>
  32. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_2.3"></a><a href="manual-Z-H-4.html#node_sec_2.3">2.3&nbsp;&nbsp;Editing</a><br>
  33. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_2.4"></a><a href="manual-Z-H-4.html#node_sec_2.4">2.4&nbsp;&nbsp;Performance</a><br>
  34. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_2.5"></a><a href="manual-Z-H-4.html#node_sec_2.5">2.5&nbsp;&nbsp;Disassembler</a><br>
  35. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_2.6"></a><a href="manual-Z-H-4.html#node_sec_2.6">2.6&nbsp;&nbsp;Module system</a><br>
  36. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_2.7"></a><a href="manual-Z-H-4.html#node_sec_2.7">2.7&nbsp;&nbsp;Library</a><br>
  37. </p>
  38. <p><b>
  39. &nbsp; &nbsp; <a name="node_toc_node_chap_3"></a><a href="manual-Z-H-5.html#node_chap_3">3&nbsp;&nbsp;Command processor</a></b><br>
  40. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.1"></a><a href="manual-Z-H-5.html#node_sec_3.1">3.1&nbsp;&nbsp;Current focus value and <tt>##</tt></a><br>
  41. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.2"></a><a href="manual-Z-H-5.html#node_sec_3.2">3.2&nbsp;&nbsp;Command levels</a><br>
  42. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.3"></a><a href="manual-Z-H-5.html#node_sec_3.3">3.3&nbsp;&nbsp;Logistical commands</a><br>
  43. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.4"></a><a href="manual-Z-H-5.html#node_sec_3.4">3.4&nbsp;&nbsp;Module commands</a><br>
  44. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.5"></a><a href="manual-Z-H-5.html#node_sec_3.5">3.5&nbsp;&nbsp;Debugging commands</a><br>
  45. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.6"></a><a href="manual-Z-H-5.html#node_sec_3.6">3.6&nbsp;&nbsp;Switches</a><br>
  46. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.7"></a><a href="manual-Z-H-5.html#node_sec_3.7">3.7&nbsp;&nbsp;Inspection mode</a><br>
  47. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.8"></a><a href="manual-Z-H-5.html#node_sec_3.8">3.8&nbsp;&nbsp;Command programs</a><br>
  48. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.9"></a><a href="manual-Z-H-5.html#node_sec_3.9">3.9&nbsp;&nbsp;Building images</a><br>
  49. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.10"></a><a href="manual-Z-H-5.html#node_sec_3.10">3.10&nbsp;&nbsp;Resource query and control</a><br>
  50. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.11"></a><a href="manual-Z-H-5.html#node_sec_3.11">3.11&nbsp;&nbsp;Threads</a><br>
  51. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_3.12"></a><a href="manual-Z-H-5.html#node_sec_3.12">3.12&nbsp;&nbsp;Quite obscure</a><br>
  52. </p>
  53. <p><b>
  54. &nbsp; &nbsp; <a name="node_toc_node_chap_4"></a><a href="manual-Z-H-6.html#node_chap_4">4&nbsp;&nbsp;Module system</a></b><br>
  55. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.1"></a><a href="manual-Z-H-6.html#node_sec_4.1">4.1&nbsp;&nbsp;Introduction</a><br>
  56. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.2"></a><a href="manual-Z-H-6.html#node_sec_4.2">4.2&nbsp;&nbsp;The configuration language</a><br>
  57. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.3"></a><a href="manual-Z-H-6.html#node_sec_4.3">4.3&nbsp;&nbsp;Interfaces</a><br>
  58. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.4"></a><a href="manual-Z-H-6.html#node_sec_4.4">4.4&nbsp;&nbsp;Macros</a><br>
  59. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.5"></a><a href="manual-Z-H-6.html#node_sec_4.5">4.5&nbsp;&nbsp;Higher-order modules</a><br>
  60. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.6"></a><a href="manual-Z-H-6.html#node_sec_4.6">4.6&nbsp;&nbsp;Compiling and linking</a><br>
  61. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.7"></a><a href="manual-Z-H-6.html#node_sec_4.7">4.7&nbsp;&nbsp;Semantics of configuration mutation</a><br>
  62. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.8"></a><a href="manual-Z-H-6.html#node_sec_4.8">4.8&nbsp;&nbsp;Command processor support</a><br>
  63. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.9"></a><a href="manual-Z-H-6.html#node_sec_4.9">4.9&nbsp;&nbsp;Configuration packages</a><br>
  64. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_4.10"></a><a href="manual-Z-H-6.html#node_sec_4.10">4.10&nbsp;&nbsp;Discussion</a><br>
  65. </p>
  66. <p><b>
  67. &nbsp; &nbsp; <a name="node_toc_node_chap_5"></a><a href="manual-Z-H-7.html#node_chap_5">5&nbsp;&nbsp;Libraries</a></b><br>
  68. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.1"></a><a href="manual-Z-H-7.html#node_sec_5.1">5.1&nbsp;&nbsp;General utilities</a><br>
  69. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.2"></a><a href="manual-Z-H-7.html#node_sec_5.2">5.2&nbsp;&nbsp;Pretty-printing</a><br>
  70. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.3"></a><a href="manual-Z-H-7.html#node_sec_5.3">5.3&nbsp;&nbsp;ASCII character encoding</a><br>
  71. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.4"></a><a href="manual-Z-H-7.html#node_sec_5.4">5.4&nbsp;&nbsp;Bitwise integer operations</a><br>
  72. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.5"></a><a href="manual-Z-H-7.html#node_sec_5.5">5.5&nbsp;&nbsp;Byte vectors</a><br>
  73. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.6"></a><a href="manual-Z-H-7.html#node_sec_5.6">5.6&nbsp;&nbsp;Sparse vectors</a><br>
  74. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.7"></a><a href="manual-Z-H-7.html#node_sec_5.7">5.7&nbsp;&nbsp;Cells</a><br>
  75. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.8"></a><a href="manual-Z-H-7.html#node_sec_5.8">5.8&nbsp;&nbsp;Queues</a><br>
  76. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.9"></a><a href="manual-Z-H-7.html#node_sec_5.9">5.9&nbsp;&nbsp;Arrays</a><br>
  77. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.10"></a><a href="manual-Z-H-7.html#node_sec_5.10">5.10&nbsp;&nbsp;Records</a><br>
  78. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.10.1"></a><a href="manual-Z-H-7.html#node_sec_5.10.1">5.10.1&nbsp;&nbsp;Low-level access to records</a><br>
  79. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.10.2"></a><a href="manual-Z-H-7.html#node_sec_5.10.2">5.10.2&nbsp;&nbsp;Record types</a><br>
  80. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.11"></a><a href="manual-Z-H-7.html#node_sec_5.11">5.11&nbsp;&nbsp;Finite record types</a><br>
  81. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.12"></a><a href="manual-Z-H-7.html#node_sec_5.12">5.12&nbsp;&nbsp;Sets over finite types</a><br>
  82. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.13"></a><a href="manual-Z-H-7.html#node_sec_5.13">5.13&nbsp;&nbsp;Hash tables</a><br>
  83. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.14"></a><a href="manual-Z-H-7.html#node_sec_5.14">5.14&nbsp;&nbsp;Port extensions</a><br>
  84. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.15"></a><a href="manual-Z-H-7.html#node_sec_5.15">5.15&nbsp;&nbsp;Fluid bindings</a><br>
  85. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.16"></a><a href="manual-Z-H-7.html#node_sec_5.16">5.16&nbsp;&nbsp;Shell commands</a><br>
  86. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.17"></a><a href="manual-Z-H-7.html#node_sec_5.17">5.17&nbsp;&nbsp;Sockets</a><br>
  87. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.18"></a><a href="manual-Z-H-7.html#node_sec_5.18">5.18&nbsp;&nbsp;Macros for writing loops</a><br>
  88. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.18.1"></a><a href="manual-Z-H-7.html#node_sec_5.18.1">5.18.1&nbsp;&nbsp;<tt>Iterate</tt></a><br>
  89. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.18.2"></a><a href="manual-Z-H-7.html#node_sec_5.18.2">5.18.2&nbsp;&nbsp;<tt>Reduce</tt></a><br>
  90. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.18.3"></a><a href="manual-Z-H-7.html#node_sec_5.18.3">5.18.3&nbsp;&nbsp;Sequence types</a><br>
  91. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.18.4"></a><a href="manual-Z-H-7.html#node_sec_5.18.4">5.18.4&nbsp;&nbsp;Synchronous sequences</a><br>
  92. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.18.5"></a><a href="manual-Z-H-7.html#node_sec_5.18.5">5.18.5&nbsp;&nbsp;Examples</a><br>
  93. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.18.6"></a><a href="manual-Z-H-7.html#node_sec_5.18.6">5.18.6&nbsp;&nbsp;Defining sequence types</a><br>
  94. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.18.7"></a><a href="manual-Z-H-7.html#node_sec_5.18.7">5.18.7&nbsp;&nbsp;Expanded code</a><br>
  95. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.19"></a><a href="manual-Z-H-7.html#node_sec_5.19">5.19&nbsp;&nbsp;Sorting lists and vectors</a><br>
  96. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.19.1"></a><a href="manual-Z-H-7.html#node_sec_5.19.1">5.19.1&nbsp;&nbsp;Design rules</a><br>
  97. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_4"></a><a href="manual-Z-H-7.html#node_sec_Temp_4">What vs. how</a><br>
  98. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_5"></a><a href="manual-Z-H-7.html#node_sec_Temp_5">Consistency across procedure signatures</a><br>
  99. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_6"></a><a href="manual-Z-H-7.html#node_sec_Temp_6">Less-than parameter first, data parameter after</a><br>
  100. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_7"></a><a href="manual-Z-H-7.html#node_sec_Temp_7">Ordering, comparison procedures and stability</a><br>
  101. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_8"></a><a href="manual-Z-H-7.html#node_sec_Temp_8">All vector operations accept optional subrange parameters</a><br>
  102. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_9"></a><a href="manual-Z-H-7.html#node_sec_Temp_9">Required vs. allowed side-effects</a><br>
  103. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.19.2"></a><a href="manual-Z-H-7.html#node_sec_5.19.2">5.19.2&nbsp;&nbsp;Procedure specification</a><br>
  104. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_10"></a><a href="manual-Z-H-7.html#node_sec_Temp_10">Procedure naming and functionality</a><br>
  105. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_11"></a><a href="manual-Z-H-7.html#node_sec_Temp_11">Types of parameters and return values</a><br>
  106. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.19.2.1"></a><a href="manual-Z-H-7.html#node_sec_5.19.2.1">5.19.2.1&nbsp;&nbsp;<tt>sorting</tt> -- general sorting package</a><br>
  107. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.19.2.2"></a><a href="manual-Z-H-7.html#node_sec_5.19.2.2">5.19.2.2&nbsp;&nbsp;Algorithm-specific sorting packages</a><br>
  108. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_12"></a><a href="manual-Z-H-7.html#node_sec_Temp_12"><tt>sorted</tt> -- sorted predicates</a><br>
  109. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_13"></a><a href="manual-Z-H-7.html#node_sec_Temp_13"><tt>list-merge-sort</tt> -- list merge sort</a><br>
  110. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_14"></a><a href="manual-Z-H-7.html#node_sec_Temp_14"><tt>vector-merge-sort</tt> -- vector merge sort</a><br>
  111. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_15"></a><a href="manual-Z-H-7.html#node_sec_Temp_15"><tt>vector-heap-sort</tt> -- vector heap sort</a><br>
  112. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_16"></a><a href="manual-Z-H-7.html#node_sec_Temp_16"><tt>vector-insert-sort</tt> -- vector insertion sort</a><br>
  113. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_17"></a><a href="manual-Z-H-7.html#node_sec_Temp_17"><tt>delete-neighbor-duplicates</tt> -- list and vector
  114. delete neighbor duplicates</a><br>
  115. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_Temp_18"></a><a href="manual-Z-H-7.html#node_sec_Temp_18"><tt>binary-searches</tt> -- vector binary search</a><br>
  116. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.19.3"></a><a href="manual-Z-H-7.html#node_sec_5.19.3">5.19.3&nbsp;&nbsp;Algorithmic properties</a><br>
  117. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.20"></a><a href="manual-Z-H-7.html#node_sec_5.20">5.20&nbsp;&nbsp;Regular expressions</a><br>
  118. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.20.1"></a><a href="manual-Z-H-7.html#node_sec_5.20.1">5.20.1&nbsp;&nbsp;Character sets</a><br>
  119. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.20.2"></a><a href="manual-Z-H-7.html#node_sec_5.20.2">5.20.2&nbsp;&nbsp;Anchoring</a><br>
  120. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.20.3"></a><a href="manual-Z-H-7.html#node_sec_5.20.3">5.20.3&nbsp;&nbsp;Composite expressions</a><br>
  121. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.20.4"></a><a href="manual-Z-H-7.html#node_sec_5.20.4">5.20.4&nbsp;&nbsp;Case sensitivity</a><br>
  122. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.20.5"></a><a href="manual-Z-H-7.html#node_sec_5.20.5">5.20.5&nbsp;&nbsp;Submatches and matching</a><br>
  123. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_5.21"></a><a href="manual-Z-H-7.html#node_sec_5.21">5.21&nbsp;&nbsp;SRFIs</a><br>
  124. </p>
  125. <p><b>
  126. &nbsp; &nbsp; <a name="node_toc_node_chap_6"></a><a href="manual-Z-H-8.html#node_chap_6">6&nbsp;&nbsp;Threads</a></b><br>
  127. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.1"></a><a href="manual-Z-H-8.html#node_sec_6.1">6.1&nbsp;&nbsp;Creating and controlling threads</a><br>
  128. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.2"></a><a href="manual-Z-H-8.html#node_sec_6.2">6.2&nbsp;&nbsp;Advanced thread handling</a><br>
  129. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.3"></a><a href="manual-Z-H-8.html#node_sec_6.3">6.3&nbsp;&nbsp;Debugging multithreaded programs</a><br>
  130. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.4"></a><a href="manual-Z-H-8.html#node_sec_6.4">6.4&nbsp;&nbsp;Optimistic concurrency</a><br>
  131. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.5"></a><a href="manual-Z-H-8.html#node_sec_6.5">6.5&nbsp;&nbsp;Condition variables</a><br>
  132. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.6"></a><a href="manual-Z-H-8.html#node_sec_6.6">6.6&nbsp;&nbsp;Mutual exclusion</a><br>
  133. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.6.1"></a><a href="manual-Z-H-8.html#node_sec_6.6.1">6.6.1&nbsp;&nbsp;Locks</a><br>
  134. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.6.2"></a><a href="manual-Z-H-8.html#node_sec_6.6.2">6.6.2&nbsp;&nbsp;Placeholders</a><br>
  135. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.7"></a><a href="manual-Z-H-8.html#node_sec_6.7">6.7&nbsp;&nbsp;Writing custom synchronization abstractions</a><br>
  136. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.8"></a><a href="manual-Z-H-8.html#node_sec_6.8">6.8&nbsp;&nbsp;Concurrent ML abstractions</a><br>
  137. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.8.1"></a><a href="manual-Z-H-8.html#node_sec_6.8.1">6.8.1&nbsp;&nbsp;Basic rendezvous combinators</a><br>
  138. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.8.2"></a><a href="manual-Z-H-8.html#node_sec_6.8.2">6.8.2&nbsp;&nbsp;Synchronous channels</a><br>
  139. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.8.3"></a><a href="manual-Z-H-8.html#node_sec_6.8.3">6.8.3&nbsp;&nbsp;Synchronous variables</a><br>
  140. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.8.3.1"></a><a href="manual-Z-H-8.html#node_sec_6.8.3.1">6.8.3.1&nbsp;&nbsp;Placeholders</a><br>
  141. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.8.3.2"></a><a href="manual-Z-H-8.html#node_sec_6.8.3.2">6.8.3.2&nbsp;&nbsp;Jars</a><br>
  142. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.8.4"></a><a href="manual-Z-H-8.html#node_sec_6.8.4">6.8.4&nbsp;&nbsp;Timeouts</a><br>
  143. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_6.8.5"></a><a href="manual-Z-H-8.html#node_sec_6.8.5">6.8.5&nbsp;&nbsp;CML to Scheme correspondence</a><br>
  144. </p>
  145. <p><b>
  146. &nbsp; &nbsp; <a name="node_toc_node_chap_7"></a><a href="manual-Z-H-9.html#node_chap_7">7&nbsp;&nbsp;Mixing Scheme 48 and C</a></b><br>
  147. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.1"></a><a href="manual-Z-H-9.html#node_sec_7.1">7.1&nbsp;&nbsp;Available facilities</a><br>
  148. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.1.1"></a><a href="manual-Z-H-9.html#node_sec_7.1.1">7.1.1&nbsp;&nbsp;Scheme structures</a><br>
  149. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.1.2"></a><a href="manual-Z-H-9.html#node_sec_7.1.2">7.1.2&nbsp;&nbsp;C naming conventions</a><br>
  150. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.1.3"></a><a href="manual-Z-H-9.html#node_sec_7.1.3">7.1.3&nbsp;&nbsp;Garbage collection</a><br>
  151. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.2"></a><a href="manual-Z-H-9.html#node_sec_7.2">7.2&nbsp;&nbsp;Shared bindings</a><br>
  152. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.2.1"></a><a href="manual-Z-H-9.html#node_sec_7.2.1">7.2.1&nbsp;&nbsp;Exporting Scheme values to C</a><br>
  153. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.2.2"></a><a href="manual-Z-H-9.html#node_sec_7.2.2">7.2.2&nbsp;&nbsp;Exporting C values to Scheme</a><br>
  154. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.2.3"></a><a href="manual-Z-H-9.html#node_sec_7.2.3">7.2.3&nbsp;&nbsp;Complete shared binding interface</a><br>
  155. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.3"></a><a href="manual-Z-H-9.html#node_sec_7.3">7.3&nbsp;&nbsp;Calling C functions from Scheme</a><br>
  156. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.4"></a><a href="manual-Z-H-9.html#node_sec_7.4">7.4&nbsp;&nbsp;Dynamic loading</a><br>
  157. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.5"></a><a href="manual-Z-H-9.html#node_sec_7.5">7.5&nbsp;&nbsp;Compatibility</a><br>
  158. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.6"></a><a href="manual-Z-H-9.html#node_sec_7.6">7.6&nbsp;&nbsp;Accessing Scheme data from C</a><br>
  159. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.6.1"></a><a href="manual-Z-H-9.html#node_sec_7.6.1">7.6.1&nbsp;&nbsp;Constants</a><br>
  160. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.6.2"></a><a href="manual-Z-H-9.html#node_sec_7.6.2">7.6.2&nbsp;&nbsp;Converting values</a><br>
  161. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.6.3"></a><a href="manual-Z-H-9.html#node_sec_7.6.3">7.6.3&nbsp;&nbsp;C versions of Scheme procedures</a><br>
  162. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.7"></a><a href="manual-Z-H-9.html#node_sec_7.7">7.7&nbsp;&nbsp;Calling Scheme functions from C</a><br>
  163. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.8"></a><a href="manual-Z-H-9.html#node_sec_7.8">7.8&nbsp;&nbsp;Interacting with the Scheme heap</a><br>
  164. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.8.1"></a><a href="manual-Z-H-9.html#node_sec_7.8.1">7.8.1&nbsp;&nbsp;Registering objects with the GC</a><br>
  165. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.8.2"></a><a href="manual-Z-H-9.html#node_sec_7.8.2">7.8.2&nbsp;&nbsp;Keeping C data structures in the Scheme heap</a><br>
  166. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.8.3"></a><a href="manual-Z-H-9.html#node_sec_7.8.3">7.8.3&nbsp;&nbsp;C code and heap images</a><br>
  167. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.9"></a><a href="manual-Z-H-9.html#node_sec_7.9">7.9&nbsp;&nbsp;Using Scheme records in C code</a><br>
  168. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.10"></a><a href="manual-Z-H-9.html#node_sec_7.10">7.10&nbsp;&nbsp;Raising exceptions from external code</a><br>
  169. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_7.11"></a><a href="manual-Z-H-9.html#node_sec_7.11">7.11&nbsp;&nbsp;Unsafe functions and macros</a><br>
  170. </p>
  171. <p><b>
  172. &nbsp; &nbsp; <a name="node_toc_node_chap_8"></a><a href="manual-Z-H-10.html#node_chap_8">8&nbsp;&nbsp;Access to POSIX</a></b><br>
  173. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.1"></a><a href="manual-Z-H-10.html#node_sec_8.1">8.1&nbsp;&nbsp;Process primitives</a><br>
  174. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.1.1"></a><a href="manual-Z-H-10.html#node_sec_8.1.1">8.1.1&nbsp;&nbsp;Process creation and termination</a><br>
  175. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.1.2"></a><a href="manual-Z-H-10.html#node_sec_8.1.2">8.1.2&nbsp;&nbsp;<tt>Exec</tt></a><br>
  176. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.2"></a><a href="manual-Z-H-10.html#node_sec_8.2">8.2&nbsp;&nbsp;Signals</a><br>
  177. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.2.1"></a><a href="manual-Z-H-10.html#node_sec_8.2.1">8.2.1&nbsp;&nbsp;POSIX signals</a><br>
  178. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.2.2"></a><a href="manual-Z-H-10.html#node_sec_8.2.2">8.2.2&nbsp;&nbsp;Other signals</a><br>
  179. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.2.3"></a><a href="manual-Z-H-10.html#node_sec_8.2.3">8.2.3&nbsp;&nbsp;Sending signals</a><br>
  180. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.2.4"></a><a href="manual-Z-H-10.html#node_sec_8.2.4">8.2.4&nbsp;&nbsp;Receiving signals</a><br>
  181. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.3"></a><a href="manual-Z-H-10.html#node_sec_8.3">8.3&nbsp;&nbsp;Process environment</a><br>
  182. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.3.1"></a><a href="manual-Z-H-10.html#node_sec_8.3.1">8.3.1&nbsp;&nbsp;Process identification</a><br>
  183. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.3.2"></a><a href="manual-Z-H-10.html#node_sec_8.3.2">8.3.2&nbsp;&nbsp;Environment variables</a><br>
  184. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.4"></a><a href="manual-Z-H-10.html#node_sec_8.4">8.4&nbsp;&nbsp;Users and groups</a><br>
  185. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.5"></a><a href="manual-Z-H-10.html#node_sec_8.5">8.5&nbsp;&nbsp;OS and machine identification</a><br>
  186. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.6"></a><a href="manual-Z-H-10.html#node_sec_8.6">8.6&nbsp;&nbsp;Files and directories</a><br>
  187. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.6.1"></a><a href="manual-Z-H-10.html#node_sec_8.6.1">8.6.1&nbsp;&nbsp;Directory streams</a><br>
  188. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.6.2"></a><a href="manual-Z-H-10.html#node_sec_8.6.2">8.6.2&nbsp;&nbsp;Working directory</a><br>
  189. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.6.3"></a><a href="manual-Z-H-10.html#node_sec_8.6.3">8.6.3&nbsp;&nbsp;File creation and removal</a><br>
  190. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.6.4"></a><a href="manual-Z-H-10.html#node_sec_8.6.4">8.6.4&nbsp;&nbsp;File information</a><br>
  191. &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.6.5"></a><a href="manual-Z-H-10.html#node_sec_8.6.5">8.6.5&nbsp;&nbsp;File modes</a><br>
  192. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.7"></a><a href="manual-Z-H-10.html#node_sec_8.7">8.7&nbsp;&nbsp;Time</a><br>
  193. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.8"></a><a href="manual-Z-H-10.html#node_sec_8.8">8.8&nbsp;&nbsp;I/O</a><br>
  194. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.9"></a><a href="manual-Z-H-10.html#node_sec_8.9">8.9&nbsp;&nbsp;Regular expressions</a><br>
  195. &nbsp; &nbsp; &nbsp; &nbsp; <a name="node_toc_node_sec_8.10"></a><a href="manual-Z-H-10.html#node_sec_8.10">8.10&nbsp;&nbsp;C to Scheme correspondence</a><br>
  196. </p>
  197. <p><b>
  198. &nbsp; &nbsp; <a name="node_toc_node_chap_A"></a><a href="manual-Z-H-11.html#node_chap_A">A&nbsp;&nbsp;ASCII character encoding</a></b><br>
  199. </p>
  200. <p>
  201. </p>
  202. <p>
  203. </p>
  204. <div align=right class=navigation><i>[Go to <span><a href="manual.html">first</a>, <a href="manual-Z-H-1.html">previous</a></span><span>, <a href="manual-Z-H-3.html">next</a></span> page<span>; &nbsp;&nbsp;</span><span class=disable>contents</span><span><span class=disable>; &nbsp;&nbsp;</span><a href="manual-Z-H-13.html#node_index_start">index</a></span>]</i></div>
  205. </div>
  206. </body>
  207. </html>