summaryrefslogtreecommitdiffstats
path: root/2021/talks/rust.md
diff options
context:
space:
mode:
Diffstat (limited to '2021/talks/rust.md')
-rw-r--r--2021/talks/rust.md35
1 files changed, 35 insertions, 0 deletions
diff --git a/2021/talks/rust.md b/2021/talks/rust.md
new file mode 100644
index 00000000..9ebab731
--- /dev/null
+++ b/2021/talks/rust.md
@@ -0,0 +1,35 @@
+[[!meta title="Extending Emacs in Rust with Dynamic Modules"]]
+[[!meta copyright="Copyright © 2021 Tuấn-Anh Nguyễn"]]
+[[!inline pages="internal(2021/info/rust-nav)" raw="yes"]]
+
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# Extending Emacs in Rust with Dynamic Modules
+Tuấn-Anh Nguyễn
+
+Dynamic module support has been available since Emacs 25. It can be
+used to extend Emacs with native libraries, for performance,
+OS-specific features, or other functionalities that would take a lot
+of time to re-implement in Lisp. The officially supported language is
+C, which is tedious and error-prone to use. This talk discusses a
+**safe** alternative that is also a lot **more convenient**: writing these
+dynamic modules in Rust.
+
+
+
+# Outline
+
+- Walking through creating **a simple dynamic module** in
+ Rust, including setting up CI.
+- Going through and explaining the **available APIs**.
+<!--- 40 minutes: All of the above, together with reporting the experience
+ of using it in real packages (e.g. tree-sitter), as well as
+ discussing **challenges and potential improvements** to dynamic modules
+ in general.-->
+
+
+
+[[!inline pages="internal(2021/info/rust-schedule)" raw="yes"]]
+
+[[!inline pages="internal(2021/info/rust-nav)" raw="yes"]]