Changeset 35592 in project


Ignore:
Timestamp:
06/12/18 13:30:09 (4 months ago)
Author:
felix
Message:

eggref pages for some eggs ported to C5

Location:
wiki/eggref/5
Files:
4 copied

Legend:

Unmodified
Added
Removed
  • wiki/eggref/5/coops

    r35591 r35592  
    510510=== Version History
    511511
    512 ; 1.7 : fixed missing compile-time load of srfi-1 (thanks to Moritz Heidkamp)
    513 ; 1.6 : fixed call to {{test-exit}} in test script
    514 ; 1.5 : added call to {{test-exit}} in test script
    515 ; 1.4 : made {{<list>}} an abstract type, since the type-predicates for primitive classes were not disjoint (thanks to Sandro)
    516 ; 1.3 : syntax needed to import srfi-1 (thanks to Moritz Heidkamp)
    517 ; 1.2 : modified to use {{include}} to handle changes in {{module}} syntax (sjamaan)
    518 ; 1.1 : made {{<pair>}} and {{<null>}} subclasses of {{<list>}}
    519 ; 1.0 : proper initform-handling for all classes
    520 ; 0.9 : metaclass-related bugfixes (thanks to Peter Lane)
    521 ; 0.8 : fixed bug related to initforms and inheritance
    522 ; 0.7 : added type-check in internal slot-lookup procedure (thanks to Kon Lovett)
    523 ; 0.6 : removed declaration which is broken on older CHICKENs (4.5.1)
    524 ; 0.5 : added type-check in {{make}} (thanks to Peter Lane)
    525 ; 0.4 : added {{<integer>}} class to {{coops-primitive-objects}}
    526 ; 0.3 : added license to .meta file
    527 ; 0.2 : performance tweaks, fix for 4.5.2 dependency (thanks to Mario)
    528 ; 0.1 : initial release
     512; 1.0 : Initial release for CHICKEN 5, based on version 1.7 from CHICKEN 4
  • wiki/eggref/5/matchable

    r35591 r35592  
    272272=== History
    273273
    274 ; 2.7 : removed {{match-define}} from documentation which is not provided by this egg (thanks to Juergen Lorenz for pointing this out)
    275 ; 2.6 : better implementation of some internal forms for E/R macros
    276 ; 2.5 : removed {{-host}} option from setup script
    277 ; 2.4 : fixing bug where (a ...) matched non-lists
    278 ; 2.3 : allowing `...' with any backend, removing redundant check in vector patterns
    279 ; 2.2 : uses srfi-46, if available (as it is in alexpander)
    280 ; 2.1 : fixing quasiquote patterns
    281 ; 2.0 : allowing ellipse patterns in other than the final position of a list
    282 ; 1.41 : added syntax-error macro & specialized for Chicken [Kon Lovett]
    283 ; 1.3 : updated to change in [[/eggref/3/syntactic-closures|syntactic-closures]] 0.91
    284 ; 1.2 : bugfix, now all tests pass with [[/eggref/3/syntactic-closures|syntactic-closures]]
    285 ; 1.1 : works now with [[/eggref/3/syntactic-closures|syntactic-closures]]
    286 ; 1.0 : initial release
     274; 1.0 : initial release for CHICKEN 5, based on version 2.7 from CHICKEN 4
  • wiki/eggref/5/miscmacros

    r35591 r35592  
    5353Executes {{BODY ...}} repeatedly, with the result of {{TEST}} bound to
    5454the variable {{it}}, until the expression {{TEST}} returns {{#f}}.
     55
     56<macro>(select EXP ((KEY ...) EXP1 ...) ... [(else EXPn ...)])</macro>
     57
     58This is similar to {{case}}, but the keys are evaluated.
    5559
    5660<macro>(if* X Y [Z])</macro>
     
    176180Similar to {{case}}, but signals an error if no clause matches.
    177181
     182<macro>(ensure PREDICATE EXP [ARGUMENTS ...])</macro>
     183
     184Evaluates the expression {{EXP}} and applies the one-argument
     185procedure {{PREDICATE}} to the result. If the predicate returns
     186{{#f}} an error is signaled, otherwise the result of {{EXP}}
     187is returned.  If compiled in ''unsafe'' mode (either by specifying
     188the {{-unsafe}} compiler option or by declaring {{(unsafe)}}),
     189then this expression expands to an unspecified value.  If specified,
     190the optional {{ARGUMENTS}} are used as arguments to the invocation
     191of the error-signalling code, as in {{(error ARGUMENTS ...)}}. If
     192no {{ARGUMENTS}} are given, a generic error message is displayed
     193with the offending value and {{PREDICATE}} expression.
     194
     195<macro>(eval-when (SITUATION ...) EXP ...)</macro>
     196
     197Controls evaluation/compilation of subforms. {{SITUATION}} should
     198be one of the symbols {{eval}}, {{compile}} or {{load}}.
     199When encountered in the evaluator, and the situation specifier
     200{{eval}} is not given, then this form is not evaluated and an
     201unspecified value is returned.  When encountered while compiling code,
     202and the situation specifier {{compile}} is given, then this form is
     203evaluated at compile-time.  When encountered while compiling code, and the
     204situation specifier {{load}} is not given, then this form is ignored
     205and an expression resulting into an unspecified value is compiled instead.
     206
     207The following table should make this clearer:
     208
     209<table>
     210<tr><th></th><th>In compiled code</th><th>In interpreted code</th></tr>
     211<tr><td>{{eval}}</td><td>ignore</td><td>evaluate</td></tr>
     212<tr><td>{{compile}}</td><td>evaluate at compile time</td><td>ignore</td></tr>
     213<tr><td>{{load}}</td><td>compile as normal</td><td>ignore</td></tr>
     214</table>
    178215
    179216=== Changelog
    180217
    181 * 2.95 Removed {{doto}}
    182 * 2.91 Added {{doto}} (contributed by Martin DeMello)
    183 * 2.9 {{inc!}} and {{dec!}} return the new value
    184 * 2.8 added {{define-syntax-rule}}
    185 * 2.7 added {{import-only}} extension property and allowed optional increment/decrement for {{inc!}} and {{dec!}}
    186 * 2.6 removed {{-host}} option from setup script
    187 * 2.5 Add counter set capability to {{define-enum}} [zbigniew]
    188 * 2.4 Added {{modify!}} and {{exchange!}} [felix]
    189 * 2.3 Added {{dotimes}} [by Kon Lovett]
    190 * 2.2 Fixed bug in {{pop!}}
    191 * 2.1 Added {{modify-location}} and made location-modification macros general for {{set!}}table locations
    192 * 2.0 Added some simple looping constructs [by Kon Lovett]
    193 * 1.9 Added {{while*}} [by Kon Lovett]
    194 * 1.8 Fixed bug in {{if*}} [Thanks to Houman Zolfaghari]
    195 * 1.7 Added {{ignore-values}} and {{define-parameter}}
    196 * 1.6 Fixed bug in {{if*}} [Thanks to Michele Simionato]
    197 * 1.5 removed {{shift!}} and {{rotate!}}
    198 * 1.4 {{ignore-errors}} returns {{#f}} on exception
    199 * 1.3 Added missing documentation for {{define-optionals}}
    200 * 1.2 Added {{define-enum}} [by Alex Shinn]
    201 * 1.1 Added {{inc!}} and {{dec!}}
    202 * 1.0 Initial release
     218* 1.0 Initial release for CHICKEN 5, based on version 2.95 of CHICKEN 4, added {{ensure}}, {{select}} and {{eval-when}}
    203219
    204220=== License
    205221
    206   Copyright (c) 2006-2012, The CHICKEN Team
     222  Copyright (c) 2006-2018, The CHICKEN Team
    207223  Copyright (c) 2004-2005, Felix L. Winkelmann
    208224  All rights reserved.
  • wiki/eggref/5/record-variants

    r35591 r35592  
    136136=== Version history
    137137
     138* 1.0: ported to CHICKEN 5
    138139* 0.5 (2009-03-22): Inital release
    139140
Note: See TracChangeset for help on using the changeset viewer.