summaryrefslogtreecommitdiffstats
path: root/2021/captions/emacsconf-2021-native--emacs-lisp-native-compiler-current-status-and-future-developments--andrea-corallo--answers--chapters.vtt
blob: 734e47f2a908e8e973436321c2212868ff2b7573 (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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
WEBVTT

00:00:00.480 --> 00:01:16.319
Thanks

00:01:16.320 --> 00:02:05.359
Why is Elisp not a general-purpose programming language, at least not completely?

00:02:05.360 --> 00:02:37.759
Is this activity related to the garbage collector?

00:02:37.760 --> 00:03:42.079
Is the idea to eventually develop Emacs itself in Elisp?

00:03:42.080 --> 00:04:27.199
How did you work on this?

00:04:27.200 --> 00:05:39.039
Does this compilation pipeline introduce vulnerabilities?

00:05:39.040 --> 00:07:28.479
What code, if any, will still benefit significantly from being written in C?

00:07:28.480 --> 00:08:49.359
What's the risk of (setq native-comp-speed 3)?

00:08:49.360 --> 00:09:15.199
Are there any limits introduced by native comp with respect to runtime introspectability, changeability/redefinability, etc?

00:09:15.200 --> 00:10:11.359
Is there a benefit in setting native-comp-compiler-options to  "-mtune=native -march="?

00:10:11.360 --> 00:11:54.799
You mentioned native-comp coming in emacs 28. Will this be the default at build time, or will distros have to set this themselves?

00:11:54.800 --> 00:14:22.479
Could we avoid libgccjit.so? Or consider using another jit lib (e.g. dynasm used by luajit) et al to gain better optimization?

00:14:22.480 --> 00:16:23.839
How much of Emacs's C code base could be translated to emacs-lisp? What is the minimum C code base necessary? 

00:16:23.840 --> 00:17:27.599
Could we statically type elisp code (via macros?) to provide more optimization hints to compiler?

00:17:27.600 --> 00:18:55.839
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?

00:18:55.840 --> 00:21:35.919
Did you try to optimize with Rust too? What are your thoughts on Rust for this particular optimization and security?

00:21:35.920 --> 00:22:59.039
Does the native compilation interface with the Emacs profiling tools?

00:22:59.040 --> 00:27:04.319
Where did funding for your work come from?

00:27:04.320 --> 00:28:36.879
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?

00:28:36.880 --> 00:29:47.679
Is this the first real-world practical use of libgccjit?

00:29:47.680 --> 00:33:49.359
Is there any task you need help with?

00:33:49.360 --> 00:38:37.519
What's a good way to proceed?

00:38:37.520 --> 00:40:46.079
What kind of packages do you think could now be practical with native comp?

00:40:46.080 --> 00:46:29.759
Why not implement Emacs Lisp in Guile and use Guile's compiler?

00:46:29.760 --> 00:48:27.679
What are some other hobbies/interests of yours besides Emacs?

00:48:27.680 --> 00:51:04.639
Will you be presenting at ELS or anywhere else in the next year?

00:51:04.640 --> 00:59:46.959
How to make Emacs more popular?

00:59:46.960 --> 01:02:04.799
Do you have 'wish list' features, things you long for Emacs to be able to do?

01:02:04.800 --> 01:05:33.359
From BBB chat: dickmao has a patch that makes Gnus async....

01:05:33.360 --> 01:10:20.719
Advice for anyone who wants to bring something into Emacs core

01:10:20.720 --> 01:10:21.720
Do you have any advice on how to approach the upstream development community?