[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: On elisp running native - deferred compilation
From: |
Stefan Monnier |
Subject: |
Re: On elisp running native - deferred compilation |
Date: |
Sat, 22 Feb 2020 09:19:27 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
> 1- When an .elc is loaded when no .eln is present we load the .elc but
> we enqeue an async compilation using 'native-compile-async'. The async
> compilation queue is eaten by a configurable number of parallel
> processes.
> 2- When each compilation unit is finished compiling we substitute each
> byte-compiled function definition with the new one.
Sounds good.
I'll just mention that IMO, we should move towards a model where
compilation (byte or native or anything else) is performed more
transparently and systematically:
- Elisp source code is always compiled before being executed: currently
the semantics of loading a file allows the behavior to differ between
loading the .el and loading the .elc, whereas I think it should always
behave like loading a .elc.
The eager-macroexpansion introduced in Emacs-24 was a step in
that direction.
- Recompilation happens automatically (e.g. either because the source
Elisp file was modified or because the compiled code doesn't match the
currently running Emacs version).
This also suggests that compiled files should be "hidden" and include
some kind of version info.
Stefan
- Re: On elisp running native, (continued)
- Re: On elisp running native, Eli Zaretskii, 2020/02/04
- Re: On elisp running native, Andrea Corallo, 2020/02/04
- Re: On elisp running native, Eli Zaretskii, 2020/02/04
- Re: On elisp running native, Paul Eggert, 2020/02/04
- Re: On elisp running native, Andrea Corallo, 2020/02/04
- Re: On elisp running native, Andrea Corallo, 2020/02/05
- Re: On elisp running native, Stefan Monnier, 2020/02/05
- Re: On elisp running native, Andrea Corallo, 2020/02/15
- Re: On elisp running native, Andrea Corallo, 2020/02/16
- On elisp running native - deferred compilation, Andrea Corallo, 2020/02/22
- Re: On elisp running native - deferred compilation,
Stefan Monnier <=
Re: On elisp running native, Andrea Corallo, 2020/02/24
- Re: On elisp running native, yyoncho, 2020/02/25
- Re: On elisp running native, Eli Zaretskii, 2020/02/25
- Re: On elisp running native, Andrea Corallo, 2020/02/25
- Re: On elisp running native, Eli Zaretskii, 2020/02/27
- Re: On elisp running native, Andrea Corallo, 2020/02/28
- Re: On elisp running native, yyoncho, 2020/02/28