[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-janitors] #1623: Implement faster vararg procedures
From: |
Chicken Trac |
Subject: |
[Chicken-janitors] #1623: Implement faster vararg procedures |
Date: |
Wed, 12 Jun 2019 06:44:42 -0000 |
#1623: Implement faster vararg procedures
-------------------------+---------------------------------
Reporter: sjamaan | Owner: sjamaan
Type: enhancement | Status: new
Priority: minor | Milestone: someday
Component: compiler | Version: 5.0.0rc1
Keywords: | Estimated difficulty: medium
-------------------------+---------------------------------
Currently, anything that accepts optional, rest or keyword arguments has
to build a list and then pick that list apart. This is wasteful because it
should not be necessary at all.
We could start with the low-hanging fruit like `case-lambda` and
`#!optional`, where the binding of arguments and argument count checking
is relatively simple. Handling `#!key` and `#!rest` or dotted tail rest
argument notation is something that seems to me either too difficult and
possibly not even worth it: you usually **want** to treat those as a list
(but patterns like `optional` could still be handled specially, if nothing
else refers to the identifier).
--
Ticket URL: <https://bugs.call-cc.org/ticket/1623>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.
- [Chicken-janitors] #1623: Implement faster vararg procedures,
Chicken Trac <=