libera/#sbcl - IRC Chatlog
Search
14:16:47
Krystof
jackdaniel: you can muffle it for the particular interface functions where you or someone else has decided that it's a good idea: (defun foo (&optional x &key y) (declare (sb-ext:muffle-conditions sb-kernel:&optional-and-&key-in-lambda-list)) (list x y))
14:22:04
Krystof
and if it was a deliberate choice, it was a terrible choice: have you tried to use note-output-record-child-changed?
14:25:33
Krystof
in the olden days, "why does read-from-string not accept my :start keyword?" was a faq
14:26:07
Krystof
but needing to know the implicit defaults of five? six? arguments in order to be able to use the :check-overlapping keyword?
14:27:47
jackdaniel
sure, it is a bad style and it is a style warning after all, still I don't like it (because such lambda lists are usually not a result of sloppiness like not using binded variables)
14:28:23
Krystof
what I say to myself is: if the style warning had been there in 1990, maybe whoever came up with note-output-record-child-changed would have done something different
14:29:14
Krystof
I agree that for the specific case of something that's in a specification document, it's annoying. And I hope to make it that those three cases are the only cases in existence. (There might be one more in CLIM, can't remember)
14:30:35
jackdaniel
there is present, present-to-string, with-input-eidtor-typeout, with-input-editing
14:44:00
jackdaniel
speaking of note-output-record-child-changed and muffling conditions, I suppose that I need to put the whole defgeneric in locally declare, right?
15:18:08
stassats
Krystof: the way i end up with &optional and &key is when i exported a function with &optional, and after some time had to extend it
15:18:37
stassats
so that warning wouldn't help, the warning would have to be "using &optional in an exported function, now you can't add &key!"