diff options
Diffstat (limited to '')
-rw-r--r-- | 2021/talks/rust.md | 35 |
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"]] |