Federico Beffa (2015-12-31 13:32 +0300) wrote: > On Thu, Dec 31, 2015 at 11:17 AM, Alex Kost <alez...@gmail.com> wrote: >> Federico Beffa (2015-12-30 20:33 +0300) wrote: >> >> [...] >>> + (arguments >>> + `(#:phases >>> + (modify-phases %standard-phases >>> + (add-before 'install 'configure >>> + (lambda* _ >>> + (substitute* "slime.el" >>> + (("inferior-lisp-program \"lisp\"") >>> + "inferior-lisp-program \"sbcl\"")) >>> + #t)) >> >> Why do you name this phase 'configure'? Actually I think this phase is >> not needed, because 'inferior-lisp-program' should be set by a user to >> whatever implementation (s)he prefers. > > It's called configure because I'm configuring a default CL implementation. > > The default value in slime is 'lisp'. I only used CLISP and SBCL and > none of them provides a binary called 'lisp'. For this reason I tough > it to be a good idea to provide a default name corresponding to an > existing binary.
I don't agree, I think we shouldn't modify the upstream code just because we think that some implementation is more likely to be used. > Of course the user has to adapt to its own needs. Yes, that's why an abstract "lisp" looks like a good default for me. BTW instead of 'substitute*' it's better to use 'emacs-substitute-variables' for replacing variable values. -- Alex