From: arthur miller <arthur.miller@live.com>
To: Eduardo Ochs <eduardoochs@gmail.com>
Cc: "emacs-devel@gnu.org" <emacs-devel@gnu.org>
Subject: Sv: Sv: Sv: Christmas wish: Literate Elisp
Date: Sat, 21 Dec 2019 05:52:14 +0000 [thread overview]
Message-ID: <VI1P194MB0429B7A8C54CDE394DCEAD4F962C0@VI1P194MB0429.EURP194.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <CADs++6iFC6CequWQgbPhxO2X+85Q1N9GzLVUAY4CKx52mRVUJA@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2862 bytes --]
> 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...
Indeed, completely agree!
> I don't know how to recompile Emacs after a change in
> a .c and restart it in less that 30 seconds
I don't know either 🙂. It take me about 2 - 3 minutes every time to recompile.
I have my emacs src from github and I just run make -j4 after a change. I don't
run full build. I then run emacs from src folder with -Q flag and test file as
argument.
> 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
You will also need simple.patch. Contains a variable to turn off/on parser in eval so you
can just eval-buffer or eval-region.
Cool if you test! I would be glad to hear opinions on the idea of literal elisp. (Please I am aware of opinions on
implementation 🙂).
# 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<http://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 <arthur.miller@live.com<mailto:arthur.miller@live.com>> 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.
(...)
[-- Attachment #2: Type: text/html, Size: 5858 bytes --]
next prev parent reply other threads:[~2019-12-21 5:52 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-12 15:45 Christmas wish: Literate Elisp arthur miller
2019-12-12 17:29 ` Stefan Monnier
2019-12-14 4:40 ` Sv: " arthur miller
2019-12-14 14:08 ` Stefan Monnier
2019-12-15 8:37 ` arthur miller
2019-12-16 12:01 ` Sv: " arthur miller
2019-12-16 13:41 ` Stefan Monnier
2019-12-16 14:02 ` Sv: " arthur miller
2019-12-16 16:07 ` Jonathan Leech-Pepin
2019-12-17 2:09 ` arthur miller
2019-12-17 11:06 ` Adam Porter
2019-12-18 16:29 ` Sv: " arthur miller
2019-12-18 18:49 ` Adam Porter
2019-12-18 20:04 ` Sv: " arthur miller
2019-12-18 23:18 ` Adam Porter
2019-12-18 23:53 ` Sv: " arthur miller
2019-12-20 15:58 ` Unknown
2019-12-18 21:18 ` Sv: Sv: Sv: " Stefan Monnier
2019-12-18 22:43 ` Christmas wish: Literate Elisp (Intro) VanL
2019-12-19 0:05 ` Sv: " arthur miller
2019-12-18 22:59 ` Sv: Sv: Sv: Christmas wish: Literate Elisp Adam Porter
2019-12-18 23:18 ` Sv: " arthur miller
2019-12-18 23:52 ` Adam Porter
2019-12-19 0:02 ` Sv: " arthur miller
2019-12-19 0:42 ` chad
2019-12-19 1:50 ` Jean-Christophe Helary
2019-12-20 0:55 ` Sv: " arthur miller
2019-12-20 15:00 ` Stefan Monnier
2019-12-20 15:50 ` Stefan Monnier
2019-12-20 15:50 ` Sv: " arthur miller
2019-12-20 16:17 ` Stefan Monnier
2019-12-20 16:34 ` Eduardo Ochs
2019-12-21 1:18 ` Sv: " arthur miller
2019-12-21 5:24 ` Eduardo Ochs
2019-12-21 5:52 ` arthur miller [this message]
[not found] ` <VI1P194MB042965777086C4466B7FF5EC962C0@VI1P194MB0429.EURP194.PROD.OUTLOOK.COM>
2019-12-21 15:29 ` Sv: " arthur miller
[not found] ` <VI1P194MB0429A123183C15AF8EC3956B962C0@VI1P194MB0429.EURP194.PROD.OUTLOOK.COM>
[not found] ` <jwv7e2pln3s.fsf-monnier+emacs@gnu.org>
[not found] ` <VI1P194MB0429F37A29A2720037CAD9F9962C0@VI1P194MB0429.EURP194.PROD.OUTLOOK.COM>
2019-12-22 7:01 ` Sv: " arthur miller
2019-12-20 16:51 ` Phillip Lord
2019-12-21 1:16 ` Tim Cross
2019-12-21 4:24 ` Sv: " arthur miller
2019-12-21 6:41 ` Tim Cross
2019-12-21 9:39 ` VanL
2019-12-21 14:17 ` Sv: " arthur miller
2019-12-14 4:16 ` Richard Stallman
2019-12-14 5:05 ` Sv: " arthur miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=VI1P194MB0429B7A8C54CDE394DCEAD4F962C0@VI1P194MB0429.EURP194.PROD.OUTLOOK.COM \
--to=arthur.miller@live.com \
--cc=eduardoochs@gmail.com \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.