The following image shows where the talk is in the schedule for Sun 2022-12-04. Solid lines show talks with Q&A via BigBlueButton. Dashed lines show talks with Q&A via IRC or Etherpad.
[[!toc ]]
Format: 18-min talk followed by live Q&A (done)
Etherpad:
Discuss on IRC: [#emacsconf-dev](https://chat.emacsconf.org/?join=emacsconf,emacsconf-dev)
Status: Q&A finished, IRC and pad will be archived on this page
# Talk
[[!template id="vid" vidid="async-mainVideo" src="https://media.emacsconf.org/2022/emacsconf-2022-async--emacs-was-async-before-async-was-cool--michael-herstine--main.webm" poster="https://media.emacsconf.org/2022/emacsconf-2022-async--emacs-was-async-before-async-was-cool--michael-herstine--main.png" captions=""""""
size="98M" duration="17:48" other_resources="""[Download --main.webm (98MB)](https://media.emacsconf.org/2022/emacsconf-2022-async--emacs-was-async-before-async-was-cool--michael-herstine--main.webm)
[Download --main.vtt](https://media.emacsconf.org/2022/emacsconf-2022-async--emacs-was-async-before-async-was-cool--michael-herstine--main.vtt)
[Download --main--chapters.vtt](https://media.emacsconf.org/2022/emacsconf-2022-async--emacs-was-async-before-async-was-cool--michael-herstine--main--chapters.vtt)
[View transcript](https://emacsconf.org/2022/talks/async#async-mainVideo-transcript)
[View on Toobnix](https://toobnix.org/w/6mKNBvuubwoWFA9SFsgUQS)
"""]]
[[!template id="chapters" vidid="async-mainVideo" data="""
00:00:00.000 Asynchronous programming
00:47.200 Automating my music player
01:42.600 Working with the API
03:22.080 make-network-process
05:05.200 The sequence of events
05:57.920 Queues
07:50.480 Callbacks
09:24.240 Client-side code
11:48.080 Demo
12:27.760 Logic
13:15.520 Callback hell
14:53.520 Lisp macros
16:46.400 Conclusion
"""]]
# Q&A
[[!template id="vid" vidid="async-qanda" src="https://media.emacsconf.org/2022/emacsconf-2022-async--emacs-was-async-before-async-was-cool--michael-herstine--answers.webm" poster="https://media.emacsconf.org/2022/emacsconf-2022-async--emacs-was-async-before-async-was-cool--michael-herstine--answers.png" ${captions}
size="34M" duration="17:48" other_resources="""[Download --answers--chapters.vtt](https://media.emacsconf.org/2022/emacsconf-2022-async--emacs-was-async-before-async-was-cool--michael-herstine--answers--chapters.vtt)
"""]]
[[!template id="chapters" vidid="async-qanda" data="""
00:00:00.000 Introduction
00:21.600 How does this approach compare to using tq.el, Emacs' built-in library for transaction queues?
01:10.480 Have you considered using the aio.el library (written by Chris Wellons) that implements async/await for Emacs lisp using promises?
02:45.440 Are you aware that EMMS has an MPD client? There's also mpc.el built into Emacs.
05:20.360 Have you seen the Lonesome Pine Specials?
07:44.400 Would using dynamic/special vars add anything interesting / easier to async elisp in your opinion?
10:16.560 How does your project compare to some of the other MPD clients?
11:55.040 Can you share the code to the macro that creates the callback tree?
14:42.880 There's another package (chuntaro?) in addition to wellon's aio that also implements a coroutine trampoline on the emacs event loop. any thoughts on the async/await paradigm generally red/blue functions, etc?
15:03.440 Any thoughts on the async await paradigm generally, red-blue functions, etc.?
21:06.320 Do you think it's a viable future for Emacs to get out of callback hell?
24:39.320 Generators
"""]]
# Description