bug#61660: [feature request] optimization of case-lambda
lloda <[email protected]>
| Newsgroups | gmane.lisp.guile.bugs |
|---|---|
| Message-ID | <[email protected]> |
On 3.0.9 > ,optimize ((case-lambda (() 0))) = 0 but > ,optimize ((case-lambda (() 0) ((a) 1))) = ((case-lambda (() 0) ((a) 1))) The problem with this is that when the output of a macro contains case-lambda, recursive application results in geometrical increase of code size. It seems that it should be possible to resolve the application on the spot; at last to reduce the case-lambda to a simple lambda when the arity is available (which now only happens when the case-lambda contains a single clause). Thanks Daniel