millejoh / emacs-ipython-notebook

Jupyter notebook client in Emacs
http://millejoh.github.io/emacs-ipython-notebook/
GNU General Public License v3.0
1.47k stars 122 forks source link

Avoid dependency on the deprecated package "cl" #595

Closed sam-s closed 5 years ago

sam-s commented 5 years ago

Replace defun*' withcl-defun', loop' withcl-loop', case' withcl-case', assert' withcl-assert', destructuring-bind' withcl-destructuring-bind', multiple-value-bind' withcl-multiple-value-bind', equalp with cl-equalp, defstruct' withcl-defstruct` &c &c &c Use lexical-binding instead of lexical-let. Add declarations and defvar to avoid breakage.

millejoh commented 5 years ago

Thanks for the PR. I think overzealous checks are keeping this from passing on travis - anyway I agree it's a good move to use cl-* functions and default to lexical binding (never could wrap my head around code that uses dynamic binding anyway).

You are using emacs 27.0.50 (i.e. the current dev vesion) right? It might take me a bit, but let me figure out what the hang-up is with emacs 25.x and 26.x before working on merging this in.

sam-s commented 5 years ago

Indeed, I am using the dev version. Thank you for your receptiveness on this matter. The patch turned out much larger (and took a lot more time and effort) than I expected. ;-)

millejoh commented 5 years ago

@sam-s thanks again for the PR. I merged in these changes with PR #596 as there were a couple additional tweaks needed to get everything kosher under travis. Cheers.