~ chicken-core (chicken-5) a248d8ac3877c387d49433cab29e17726cf1bcdb
commit a248d8ac3877c387d49433cab29e17726cf1bcdb Author: Peter Bex <peter@more-magic.net> AuthorDate: Thu Nov 18 07:29:55 2021 +0100 Commit: Peter Bex <peter@more-magic.net> CommitDate: Thu Nov 18 07:29:55 2021 +0100 Sync manual from wiki diff --git a/manual/Deviations from the standard b/manual/Deviations from the standard index 6001b5cf..7dc45ec3 100644 --- a/manual/Deviations from the standard +++ b/manual/Deviations from the standard @@ -30,6 +30,21 @@ following syntactic forms: {{import}}, {{require-extension}}, {{require-library}}, {{begin-for-syntax}}, {{export}}, {{module}}, {{cond-expand}}, {{syntax}}, {{reexport}}, {{import-for-syntax}}. +=== Assignment to unbound variables + +{{set!}} may assign values to unbound variables; this creates a new +top-level binding for the variable, as if {{define}} had been used +instead. This extension must be used with care, as typos might cause +unexpected results: + +<enscript highlight="scheme"> +> (let ((frob 5)) + (set! frov (+ frob 1)) ; oops! + frob) +> 5 +> frov +> 6 +</enscript> == Unconfirmed deviations diff --git a/manual/Extensions to the standard b/manual/Extensions to the standard index 66ef6c64..58786f5e 100644 --- a/manual/Extensions to the standard +++ b/manual/Extensions to the standard @@ -36,7 +36,8 @@ Predefined feature-identifiers are "situation" specific: ; eval : {{csi}}, {{chicken}}, {{extras}}, {{srfi-0}}, {{srfi-2}}, {{srfi-6}}, {{srfi-8}}, {{srfi-9}}, {{srfi-10}}, {{srfi-11}}, {{srfi-12}}, {{srfi-15}}, {{srfi-16}}, {{srfi-17}}, {{srfi-23}}, {{srfi-26}}, {{srfi-28}}, {{srfi-30}}, {{srfi-31}}, {{srfi-39}}, {{srfi-55}}, {{srfi-61}}, {{srfi-62}}. {{library}} is implicit. -The following feature-identifier classes are available in all situations: {{(machine-byte-order)}}, {{(machine-type)}}, {{(software-type)}}, {{(software-version)}}, where the actual feature-identifier is platform dependent. +The symbols returned by the following procedures from [[Module (chicken platform)|(chicken platform)]] are also available as feature-identifiers in all situations: {{(machine-byte-order)}}, {{(machine-type)}}, {{(software-type)}}, {{(software-version)}}. For example, the {{machine-type}} class of feature-identifiers include {{arm}}, +{{alpha}}, {{mips}}, etc. In addition the following feature-identifiers may exist: {{cross-chicken}}, {{dload}}, {{manyargs}}, {{ptables}}. diff --git a/manual/Module (chicken keyword) b/manual/Module (chicken keyword) index 0d05ed0f..8599d02a 100644 --- a/manual/Module (chicken keyword) +++ b/manual/Module (chicken keyword) @@ -38,9 +38,6 @@ procedure {{THUNK}} is invoked and the result value is returned. If (increase 123 #:amount 10) ==> 133 </enscript> -Note: the {{KEYWORD}} may actually be any kind of object. - - ==== keyword? <procedure>(keyword? X)</procedure>Trap