diff options
Diffstat (limited to '2023/talks/scheme.md')
-rw-r--r-- | 2023/talks/scheme.md | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/2023/talks/scheme.md b/2023/talks/scheme.md new file mode 100644 index 00000000..011d52b1 --- /dev/null +++ b/2023/talks/scheme.md @@ -0,0 +1,78 @@ +[[!meta title="Bringing joy to Scheme programming"]] +[[!meta copyright="Copyright © 2023 Andrew Tropin"]] +[[!inline pages="internal(2023/info/scheme-nav)" raw="yes"]] + +<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing --> +<!-- You can manually edit this file to update the abstract, add links, etc. ---> + + +# Bringing joy to Scheme programming +Andrew Tropin - Nick: [abcdw](https://trop.in/contact), Site: <https://trop.in/>, Fediverse: <https://fosstodon.org/@abcdw> + +[[!inline pages="internal(2023/info/scheme-before)" raw="yes"]] + +Emacs is usually a primary tool people remember, when talk about +development environment for lisp languages. It serves the purpose +great for Common Lisp, Clojure and of course Emacs Lisp, but what +about Scheme? Let's talk about current state of the things, recent +improvements, and emerging tools in this field. + +My talk covers the following: + +- What does a usual Scheme developer day look like? And how it can be + made more enjoyable? +- Important developer duties, their automation and acceleration. +- Interactive development and its benefits. +- Emacs setup for Scheme development. + +Links: + +- <https://git.sr.ht/~abcdw/emacs-arei> +- <https://git.sr.ht/~abcdw/guile-ares-rs> + +About the speaker: + +Talk about Lisp development workflows, REPLs, and modern Scheme tooling for Emacs. +Author of Guix Home, maintainer of [rde](https://git.sr.ht/~abcdw/rde), FOSS developer. + +# Discussion + +## Questions and answers + +- Q: How much do you use these repels remotely ex using a server or + desktop from your laptop? + - A: I don't use it remotely at the moment, but it should work + perfectly fine (except maybe lookup and other similiar + functions). I also want to add a shepherd service for ares-rs, + so you can connect to GNU Shepherd and systems based on it (like + GNU Guix) from you emacs process and interact fluently with + guile code. +- Q: Can this be integrated with eglot? + - A: I'm not sure how this integration could look like. + Theoretically, it's possible to expose many of ares-rs + functions via LSP custom actions (or whatever it called). + Anyway, contact me on IRC or <https://trop.in/contact> to + discuss it in more details if you have something in mind. +- Q: How hard is it to add support for something else than Guile? Does + it make sense to contribute at this early stage of development? + I've written several packages for CHICKEN Scheme before and would + like to try this one. + - A: It's a matter of implementing the whole chicken-ares-rs :) + Many of the code can be reused, but not all, unfortunately. + emacs-arei doesn't need any (or almost any) changes. +- Q: (One day late sorry) Is nREPL more extensible than what SLIME/SLY + use in Common Lisp world (I think it's comint.el) ? + - A: Yes, it's. I was evaluating and considering SWANK protocol, + but found nREPL to be more suitable and future proof. + <https://github.com/astine/swank-client/blob/master/swank-description.markdown> + +### Notes and discussion + +- brilliant work for scheme +- yeah, this is overdue. the only real alternative is slime-r7rs + +[[!inline pages="internal(2023/info/scheme-after)" raw="yes"]] + +[[!inline pages="internal(2023/info/scheme-nav)" raw="yes"]] + + |