[[!toc ]] Format: 21-min talk ; Q&A: ask questions via Etherpad/IRC; we'll e-mail the speaker and post answers on this wiki page after the conference Etherpad: Status: TO_CAPTION_QA # Talk
[[!template id="chapters" vidid="rust-mainVideo" data=""" 00:00.000 Rune 00:17.082 The Emacs core 00:57.168 Why create this? 01:55.865 How does this compare to other projects? 03:01.315 Multi-threading 03:32.441 Multi-threading elisp 03:47.648 No-GIL method 04:32.638 Actors 04:51.252 Multi-threading elisp (functions) 05:34.680 Caveats 05:57.090 Multi-threading elisp (data) 06:38.249 Copy values to other threads on demands 06:57.884 Multi-threading elisp (buffers) 08:11.903 Would this actually be useful? 08:46.919 Precise garbage collection 09:16.537 How Emacs used to deal with roots 10:38.713 Conservative stack scanning 11:00.157 Movable objects 12:38.829 How Rust makes precise GC easy 14:13.227 Other Rust niceties: proc macro 15:14.560 sum types 16:01.041 Regex 16:16.052 Parsers 16:27.210 Other changes: GUI first, terminal second 16:58.919 Off-screen cursor 17:16.305 Image flow 17:24.440 Testing 18:36.345 Status 19:07.247 Next directions 19:22.739 How to get involved """]]
Duration: 20:06 minutes
# Q&A
[[!template id="chapters" vidid="rust-qanda" data=""" 00:08.500 Q: Have you considered using CRDTs to share buffers between threads and merge any concurrent edits automatically? 01:05.874 Q: Why hosted on GitHub? GitHub is nonfree. Is it possible to report bugs/send patches without using GitHub? 01:22.960 Q: Do you think it's possible to achieve 100% compatibility with current Emacs code? 02:11.913 Q: so you're re-implementing elisp in rust? have you considered using a more modern lisp, such as scheme? [11:03] 04:01.400 Q: Do you have specific features from the Rust compiler that are missing (or are nightly-only) that you would take advantage of? 05:26.880 Q: Can remacs be reused? 07:23.600 Q: What are you thoughts on the GUI layer. Any plans on how to reimplement it? 08:21.240 Q: If money could fix the problem, how much would it cost to ship this with feature parity before 2026? 09:28.350 GObject implementation 09:56.600 Q: elisp is implemented in c, so if you're not implementing elisp in rust, are you using/keeping the c implementation of elisp? 10:42.680 Clarifying rewriting Elisp in Rust 12:57.908 Q: Will your Rust implementation also be able to run Emacs bytecode? Or are you implementing it at the Lisp level? 14:20.100 Q: Is it possible to bootstrap with just the bytecode interpreter? 17:03.960 What would it take to bootstrap Guile in Rune? """]]
Listen to just the audio:
Duration: 19:15 minutes
# Description