LFE - a lisp flavour on the Erlang VM
summary
LFE claims to be a proper Lisp that runs on the standard BEAM and performs as efficiently as native Erlang while interoperating seamlessly with OTP. It implements Lisp‑2 semantics to fit BEAM’s multi‑arity functions, embeds pattern matching everywhere, and uses BEAM’s fixed data types (no user‑defined types) and module‑level compilation as constraints. The implementation includes macros at compile time, binary/record interop as BEAM tuples, rebar tooling support, and ongoing work for destructs and Clojure/JVM interop.
AI-written summary · about
chapters (16)
- 0:00Introduction to LFE
- 1:30Why choose Lisp
- 4:00LFE goals and efficiency
- 5:10System architecture
- 6:38The BEAM virtual machine
- 8:55Properties affecting LFE
- 10:46Syntax and data types
- 14:28Binary pattern matching
- 17:12Working with records
- 19:06Modules and functions
- 25:41Lisp-1 vs Lisp-2
- 31:04Pattern matching
- 33:46Macros and metaprogramming
- 36:36Future work and ongoing projects
- 39:18Conclusion and resources
- 40:49Q&A
related talks
42mLFE from 0 to 120kph... in 45 Minutes
26mseL4 and BEAM: A match made in Erlang
48mGetting to Know the Erlang Virtual Machine, the BEAM
41mGleam: Lean BEAM typing machine
32mElixir for the rubyist
42mIntroduction to Elixir for Rubyists
34mInfERL: Scalable and Extensible Erlang Static Analysis
04mInterview
