blob: 49712db5d579e5052d49b15c916c6d81b605aae6 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
<!-- Automatically generated by conf-create-info-pages -->
[[!toc ]]
Q&A: live
Duration: 39:08
If you have questions and the speaker has not indicated public contact information on this page, please feel free to e-mail us at <emacsconf-submit@gnu.org> and we'll forward your question to the speaker.
# Talk
[[!template id="vid" vidid="mainVideo" src="https://media.emacsconf.org/2021/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--main.webm" poster="https://media.emacsconf.org/2021/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--main.png" captions="""<track label="English" kind="captions" srclang="en" src="/2021/captions/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--main.vtt" default />"""
size="89M" duration="39:08" other_resources="""[Download .odp (3.6MB)](https://media.emacsconf.org/2021/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo.odp)
[Download --compressed56.webm (40.8MB)](https://media.emacsconf.org/2021/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--compressed56.webm)
[Download --main.vtt](https://media.emacsconf.org/2021/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--main.vtt)
[View on Toobnix](https://toobnix.org/w/aCnFuNEzX1kMKJp3q31YKx)
"""]]
# Q&A
[[!template id="vid" vidid="qanda" src="https://media.emacsconf.org/2021/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--answers.webm" poster="https://media.emacsconf.org/2021/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--answers.png"
size="141.8M" duration="75:02" other_resources="""[Download --answers--chapters.vtt](https://media.emacsconf.org/2021/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--answers--chapters.vtt)
"""]]
[[!template id="chapters" vidid="qanda" data="""
00:00 Thanks
01:16 Why is Elisp not a general-purpose programming language, at least not completely?
02:05 Is this activity related to the garbage collector?
02:37 Is the idea to eventually develop Emacs itself in Elisp?
03:42 How did you work on this?
04:27 Does this compilation pipeline introduce vulnerabilities?
05:39 What code, if any, will still benefit significantly from being written in C?
07:28 What's the risk of (setq native-comp-speed 3)?
08:49 Are there any limits introduced by native comp with respect to runtime introspectability, changeability/redefinability, etc?
09:15 Is there a benefit in setting native-comp-compiler-options to "-mtune=native -march="?
10:11 You mentioned native-comp coming in emacs 28. Will this be the default at build time, or will distros have to set this themselves?
11:54 Could we avoid libgccjit.so? Or consider using another jit lib (e.g. dynasm used by luajit) et al to gain better optimization?
14:22 How much of Emacs's C code base could be translated to emacs-lisp? What is the minimum C code base necessary?
16:23 Could we statically type elisp code (via macros?) to provide more optimization hints to compiler?
17:27 Elisp and Python all are dynamically typed langauge, but benchmark shows that Elisp runs slower than Python. Could we learn some best practices from the Python community?
18:55 Did you try to optimize with Rust too? What are your thoughts on Rust for this particular optimization and security?
21:35 Does the native compilation interface with the Emacs profiling tools?
22:59 Where did funding for your work come from?
27:04 What kind of application do I envision native comp enabling to work well in Emacs in the next few years, and which one would not be possible?
28:36 Is this the first real-world practical use of libgccjit?
29:47 Is there any task you need help with?
33:49 What's a good way to proceed?
38:37 What kind of packages do you think could now be practical with native comp?
40:46 Why not implement Emacs Lisp in Guile and use Guile's compiler?
46:29 What are some other hobbies/interests of yours besides Emacs?
48:27 Will you be presenting at ELS or anywhere else in the next year?
51:04 How to make Emacs more popular?
59:46 Do you have 'wish list' features, things you long for Emacs to be able to do?
01:02:04 From BBB chat: dickmao has a patch that makes Gnus async....
01:05:33 Advice for anyone who wants to bring something into Emacs core
01:10:20 Do you have any advice on how to approach the upstream development community?
"""]]
# Description
|