diff options
Diffstat (limited to '')
-rw-r--r-- | 2024/info/rust-before.md | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/2024/info/rust-before.md b/2024/info/rust-before.md new file mode 100644 index 00000000..fcd31ab7 --- /dev/null +++ b/2024/info/rust-before.md @@ -0,0 +1,66 @@ +<!-- Automatically generated by emacsconf-publish-before-page --> +[[!toc ]] +Format: 21-min talk ; Q&A: BigBlueButton conference room +Status: TO_CAPTION_QA + + + + + +# Talk + +<div class="vid mainVideo"><video controls preload="none" id="mainVideo-rust"><source src="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--main.webm" />captions="""<track label="English" kind="captions" srclang="en" src="/2024/captions/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--main.vtt" default />"""<track kind="chapters" label="Chapters" src="/2024/captions/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--main--chapters.vtt" /><p><em>Your browser does not support the video tag. Please download the video instead.</em></p></video>[[!template id="chapters" vidid="mainVideo-rust" 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 + +"""]]<div></div>Duration: 20:06 minutes<div class="files resources"><ul><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--intro.vtt">Download --intro.vtt</a></li><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--intro.webm">Download --intro.webm</a></li><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--main--chapters.vtt">Download --main--chapters.vtt</a></li><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--main.vtt">Download --main.vtt</a></li><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--main.webm">Download --main.webm (46MB)</a></li><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--slides.org">Download --slides.org</a></li><li><a href="https://toobnix.org/w/wYBo5m5jsiu1JUfcHzdhhu">View on Toobnix</a></li><li><a href="https://youtu.be/629ct-cBwSI">View on Youtube</a></li></ul></div></div> + +# Q&A + +<div class="vid qanda"><video controls preload="none" id="qanda-rust"><source src="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--answers.webm" />captions="""<track label="English" kind="captions" srclang="en" src="/2024/captions/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--answers.vtt" default />"""<track kind="chapters" label="Chapters" src="/2024/captions/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--answers--chapters.vtt" /><p><em>Your browser does not support the video tag. Please download the video instead.</em></p></video>[[!template id="chapters" vidid="qanda-rust" 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? + +"""]]<div>Listen to just the audio:<br /><audio controls preload="none" id="qanda-rust-audio" src="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--answers.opus"></audio></div><div></div>Duration: 19:15 minutes<div class="files resources"><ul><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--answers--chapters.vtt">Download --answers--chapters.vtt</a></li><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--answers.opus">Download --answers.opus (9.8MB)</a></li><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--answers.vtt">Download --answers.vtt</a> (unedited)</li><li><a href="https://media.emacsconf.org/2024/emacsconf-2024-rust--an-experimental-emacs-core-in-rust--troy-hinckley--answers.webm">Download --answers.webm (42MB)</a></li><li><a href="https://toobnix.org/w/8n3SZoZGuon4C2tyHhAd2H">View on Toobnix</a></li><li><a href="https://www.youtube.com/watch?v=sBpTP0kJV-g">View on Youtube</a></li></ul></div></div> +# Description +<!-- End of emacsconf-publish-before-page -->
\ No newline at end of file |