common.hlp 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. This file is an appendix to the 29 July (Colander) Edition of the
  2. Common Lisp Reference Manual. Certain chapters have not been implemented
  3. at all, but those that are largely available have only the exceptions
  4. described.
  5. Chapter 5.
  6. DEFUN
  7. DECLARE is legal but does nothing. No implicit BLOCK. DOC-STRING
  8. not put on property list.
  9. DEFSELECT
  10. Not defined.
  11. DEFCONST
  12. Conflicting PSL definition. Probably not final Common Lisp def.
  13. anyway. (Latest report is that it will be named DEFCONSTANT).
  14. Chapter 6.
  15. TYPEP, SUBTYPEP
  16. Not defined.
  17. RATIONALP
  18. Not defined (No rationals).
  19. COMPLEXP
  20. Not defined (No complex numbers).
  21. VECTORP
  22. Only true of (vector t)
  23. ARRAYP
  24. True of vectors currently. No arrays yet.
  25. CLOSUREP
  26. Not defined (no closures).
  27. EQUALP
  28. No FUZZ optional argument. Same as EQUAL.
  29. Chapter 7.
  30. CLOSURE
  31. Not defined (No closures).
  32. SWAPF, EXCHF
  33. Not defined.
  34. FLET, LABELS, MACROLET
  35. Not defined (No local function definition).
  36. CASE
  37. Incompatible PSL definition.
  38. TYPECASE
  39. Not defined.
  40. BLOCK
  41. Not defined.
  42. RETURN
  43. Restricted placement.
  44. RETURN-FROM
  45. Not defined.
  46. Section 7.8.3 Mapping.
  47. The MAP functions in Standard Lisp take a single list as the first
  48. argument and the function as the second argument. This is highly
  49. incompatible with Common Lisp. The means of dealing with this has
  50. not been determined yet.
  51. PROG
  52. No initializations.
  53. PROG*
  54. Currently the same as PROG, since no initializations.
  55. GO
  56. Restricted placement.
  57. Section 7.9 Multiple Values
  58. Multiple values do not exist in PSL.
  59. CATCH
  60. Incompatible PSL definition. *CATCH follows this definition, with
  61. a single FORM.
  62. CATCH-ALL, UNWIND-ALL, UNWIND-PROTECT
  63. Not defined.
  64. Chapter 8.
  65. DEFMACRO
  66. The PSL version has destructuring but not keywords.
  67. Chapter 9.
  68. DECLARE, LOCALLY, THE
  69. Currently defined as macros which do nothing.
  70. Chapter 10.
  71. The current PSL implementation of property lists uses an a-list
  72. instead of the Common Lisp specification of alternating indicators
  73. and values.
  74. GETPR
  75. No optional DEFAULT value.
  76. GETF, PUTF, REMF
  77. Not defined.
  78. GET-PROPERTIES, MAP-PROPERTIES
  79. Not defined.
  80. COPYSYMBOL
  81. Not defined.
  82. GENSYM
  83. No optional argument.
  84. GENTEMP
  85. Not defined.
  86. SYMBOL-PACKAGE
  87. Not defined.
  88. Chapter 11.
  89. A very simple package system is implemented in PSL which is
  90. not compatible with this specification and is not fully integrated.
  91. Functions other than those below are not defined.
  92. INTERN, REMOB, INTERNEDP
  93. No optional package.
  94. Chapter 12.
  95. Complex numbers and ratios are not implemented in PSL. The
  96. functions which are defined from this chapter are listed below.
  97. Others may be defined in the MATHLIB module.
  98. ZEROP, PLUSP, MINUSP, ODDP, EVENP
  99. Return NIL instead of error for non-numeric arguments.
  100. =, <=, >=, etc.
  101. Two arguments only.
  102. MAX, MIN
  103. Defined as described.
  104. +, -, *, /
  105. Defined as described.
  106. INCF, DECF
  107. Defined as described.
  108. EXPT
  109. POWER must be an integer.
  110. ABS
  111. Defined as described (no complex numbers, though).
  112. FLOAT
  113. No optional OTHER.
  114. MOD
  115. Two arguments required, must be integers.
  116. LOGIOR, LOGXOR, LOGAND, LOGNOT, ASH
  117. Defined as described.
  118. Chapter 13.
  119. The CHARS module defines these functions, with the following
  120. exceptions.
  121. MAKE-CHAR
  122. Not defined.
  123. DIGIT-WEIGHT
  124. Not defined.
  125. CHAR-NAME, NAME-CHAR
  126. Not defined.
  127. Chapter 14.
  128. Many of the sequence functions are defined in PSL for lists only
  129. (e.g. LENGTH), and many use keyword arguments, which are not
  130. implemented. The following are defined:
  131. ELT, SETELT
  132. Defined as described.
  133. SUBSEQ
  134. END argument is required, not optional.
  135. COPYSEQ, CATENATE
  136. Defined as described.
  137. Chapter 15.
  138. LIST-LENGTH
  139. No optional LIMIT.
  140. NTH
  141. Incompatible PSL definition.
  142. MAKE-LIST
  143. Not defined.
  144. APPEND, NCONC
  145. Takes only 2 arguments.
  146. PUSHNEW
  147. Not defined.
  148. BUTLAST, NBUTLAST
  149. No optional N (uses default value 1).
  150. SETNTH
  151. Not defined.
  152. SUBST, NSUBST
  153. EQUAL is used, not EQL.
  154. SUBSTQ, NSUBSTQ
  155. Not defined.
  156. NSUBLIS
  157. Not defined.
  158. Section 15.5 Using Lists as Sets
  159. Most of these functions require keywords. This section has not
  160. been implemented yet.
  161. Section 15.6 Association Lists.
  162. Not implemented yet.
  163. Section 15.7 Hash Tables
  164. Not yet implemented.
  165. Chapter 16.
  166. Arrays do not yet exist in PSL.
  167. Chapter 17.
  168. The string functions are obtained by LOADing the STRINGS module.
  169. CHAR
  170. Conflicting PSL definition. Not defined.
  171. STRING=, STRING-EQUAL, etc.
  172. 2 arguments only. No keyword arguments.
  173. MAKE-STRING
  174. FILL-CHARACTER is required.
  175. STRING-UPCASE, STRING-DOWNCASE, STRING-CAPITALIZE
  176. No keyword arguments.
  177. STRING
  178. Conflicting PSL definition. Called STRINGIFY in the STRINGS pkg.
  179. Chapter 18. Structures.
  180. We are currently using a version of DEFSTRUCT close to this,
  181. obtained by LOADing NSTRUCT. This isn't documented and has some
  182. bugs, but it uses the same code as the LispM DEFSTRUCT.
  183. Chapter 19. The Evaluator.
  184. This chapter is incomplete.
  185. Chapter 20. Streams.
  186. Streams are not yet implemented in PSL in this fashion.
  187. Chapter 21. Input and Output.
  188. Not yet implemented.
  189. Chapter 22. File System Interface.
  190. Not yet implemented.
  191. Chapter 23. Errors.
  192. Not yet implemented.
  193. Chapter 24. The Compiler.
  194. Not yet implemented.