Re: Reviewing named and optional parameters
Daphne Preston-Kendal 21 Jun 2021 10:37 UTC
Hello,
I’ve just published the second version of this document. <https://dpk.gitlab.io/presrfis/arguments.html>
The summary of the changes and updates is:
- Adopted the term ‘bridged implementation’.
- New discussion of the behaviour of procedures which are given real keyword arguments whose names do not match those of any formal keyword parameters.
- Note that limitations on how a compiler or an implementation can optimize may mean that procedures created by `define-keyword` may be more efficient than those created with `lambda-keyword`.
- Additional discussion of how the lexical semantics of Racket and Kawa might be accommodated, including adding a separate `keyword-apply` procedure to complement `apply`.
- Additional notes on potential conflicts in deciding the notation of keyword datums.
- Preliminarily remove discussion of compiler macros, pending revision to reflect what R6RS `syntax-case` can do in that regard.
- New issues: the name of the `:` macro doesn’t work in Schemes where a bare colon gets read as a self-evaluating keyword datum; note another approach to keyword datums and that using normal symbols isn’t very well considered at the moment.
You can see a diff between this version and the first one here:
<https://gitlab.com/dpk/presrfis/-/compare/8f580c3e61649b046c48408fddd5cc19790342ba...830afcc764ab128d61dff60a02dbd09d758121dd?from_project_id=24936968#807b342342fc391537165de0134a947b5faaaa99>
Further comments are welcome. I intend to revise this document continually until solid proposals and finalized SRFIs fall out of it. :-)
Many thanks,
Daphne