As info; my bytecomp patch has bug, don't use it (just don't bytecompile) when you test, last version won't produce .elc file. I don't have time to fix it today. C patch works fine (with eval-buffer or eval-region ). /a ________________________________ Från: arthur miller Skickat: den 21 december 2019 07:02 Till: Eduardo Ochs Ämne: Sv: Sv: Sv: Christmas wish: Literate Elisp Here are all 4 files again with simple.patch for lisp/simple.el. Hope it works for you. cheers /a ________________________________ Från: Eduardo Ochs Skickat: den 21 december 2019 06:24 Till: arthur miller Kopia: emacs-devel@gnu.org Ämne: Re: Sv: Sv: Christmas wish: Literate Elisp Sorry, I should have written a longer message, with most, or all, parts of it written in the first person... In my experience hanging out at the #emacs channel at Freenode and asking for help or hints on elisp is fun, and it's easy to test ideas interactively with C-x C-e... asking for help on the C side of Emacs is not so fun - patching the C source is considered arcane knowledge (<- my impression!) and fewer people will be able to discuss that and to help... also, I don't know how to recompile Emacs after a change in a .c and restart it in less that 30 seconds (slow machine here - I use an old ThinkPad with LibreBoot) - in fact I don't think I've ever patched the C source before! Here's the script that I used to test Arthur's patch: # Download the attachments of this message: # https://lists.gnu.org/archive/html/emacs-devel/2019-12/msg00556.html # in /tmp/: cd /tmp/ wget -O bytecomp.patch https://lists.gnu.org/archive/html/emacs-devel/2019-12/txtkIKP0OSag7.txt wget -O lread.patch https://lists.gnu.org/archive/html/emacs-devel/2019-12/txttFA8rLAthl.txt wget -O chatty.el https://lists.gnu.org/archive/html/emacs-devel/2019-12/txt6f3pEXMWNI.txt # Apply the patches in /tmp/: cd /tmp/ cp -v ~/bigsrc/emacs/src/lread.c /tmp/ cp -v ~/bigsrc/emacs/lisp/emacs-lisp/bytecomp.el /tmp/ # (find-man "1 patch") patch lread.c lread.patch patch bytecomp.el bytecomp.patch # If they applied cleanly, copy the patched files back: cp -v /tmp/lread.c ~/bigsrc/emacs/src/lread.c cp -v /tmp/bytecomp.el ~/bigsrc/emacs/lisp/emacs-lisp/bytecomp.el # Rebuild Emacs. # I usually skip some of the steps below - my way of executing # these scripts line by line from Emacs is explained here: # http://angg.twu.net/emacsconf2019.html # http://angg.twu.net/eev-intros/find-eev-quick-intro.html#6 rm -Rfv ~/bigsrc/emacs/ mkdir -p ~/bigsrc/emacs/ cd ~/bigsrc/ git clone git://git.sv.gnu.org/emacs cd ~/bigsrc/emacs/ time ./autogen.sh 2>&1 | tee oa time ./configure 2>&1 | tee oc time make bootstrap 2>&1 | tee omb time make 2>&1 | tee om # Run the new Emacs: ~/bigsrc/emacs/src/emacs Cheers, Eduardo Ochs http://angg.twu.net/#eev On Fri, 20 Dec 2019 at 22:18, arthur miller > wrote: > I was expecting that Arthur would come up with a preprocessor written > in (I guess) 30 lines of Elisp... Interesting 🙂. If you have red my previous mails to this list you might have noticed that I am not an elisp guru. Stefan has outlined two possible ways how this could be implemented in Elisp, if you follow his advice I am sure you will have a working solution you can present to us. I don't care how many lines of code it will take. (...)