Dear Andrea The point is NOT to diverge from Common Lisp. Such divergence is - IMHO - unwarranted. Plus, the proposal for the ftype declaration also carries over to type declarations, which, again, are useful per se, even if the compiler is "smart enough" (ok; this one is for old-timers :) ) Having said that, a provision can be made that a nameless ftype declaration at a function top level refers to the "definenda" function. Again, having to use ftype instead of type is a consequence of ELisp being a 2-lisp. Cheers MA On Fri, May 10, 2024 at 8:47 AM Andrea Corallo wrote: > Marco Antoniotti writes: > > > Ciao Andrea > > > > The presentation I attended gave me the idea of "ranting talks" at the > next ELS :) > > > > Having said so, I now think that, to save goat and cabbage, what you > want is > > > > (defun foo (x y) > > (declare (ftype (function (integer number) number) foo)) > > (+ x y)) > > > > Common lispers can live with that. > > > > All the best > > > > MA > > Ciao Mario, > > not sure what maintainers think about it, I'm not in love with this > solution because one has to repeat 'foo' two times and we don't support > anyway unsing declare inside a function to declare another one. > > Mmmhh > > Andrea > -- Marco Antoniotti, Professor tel. +39 - 02 64 48 79 01 DISCo, University of Milan-Bicocca U14 2043 http://dcb.disco.unimib.it Viale Sarca 336 I-20126 Milan (MI) ITALY