I think we're on the same page about that, but it seems to me that the rule in your email earlier was ".lisp" is added to the filename if there isn't a dot in the name already and if the filetype is null.
No. The current rule is: ".lisp" is added to the filename *always* if the component type is ".lisp".
Which rule the user pretty much knows already, since he has plenty of components like "foo" that correspond to file "foo.lisp".
I thought your proposal was that if the file was a cl-source file (and would get ".lisp" added because of source-file-type), then if you put a ".lisp" in the filename, you would get TWO copies --- ".lisp.lisp" because the .lisp in the filename would not be interpreted as a type, but as a part of the name proper.
Yes, this is my proposal and what the current code does. On the other hand if you use #p"foo.lisp" then no additional ".lisp" is added (and neither is it added if you use #p"foo"). So if you want that behavior, you can have it, too.
@james: I suppose that #p"..." names that only use portable characters could be portably accepted in pathname arguments.
I was unhappy with that because it seemed like a complex dependency on something that's invisible to the system definer (viz. the component-file-type method). But maybe I misread your original email?
The "complex" dependency already exists in legacy ASDF. Reliance upon ".lisp" being added to :file components but not :static-file components is pervasive.
[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] *EULA: By reading or responding to this message you agree that all my stated or unstated opinions are correct.* "EULA" — patent pending.