summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--2021/talks/form.md58
1 files changed, 24 insertions, 34 deletions
diff --git a/2021/talks/form.md b/2021/talks/form.md
index 08b25c1d..5f9c5537 100644
--- a/2021/talks/form.md
+++ b/2021/talks/form.md
@@ -8,6 +8,10 @@
# Old McCarthy Had a Form
Ian Eure
+Name Pronunciation: (EE-un YOU-r)
+Pronouns: he/him/his
+Preferred contact info: ian@retrospec.tv / ieure on Libera
+
[[!inline pages="internal(2021/info/form-schedule)" raw="yes"]]
Most practical languages are multi-paradigm, offering several
@@ -20,40 +24,26 @@ modular, flexible Emacs Lisp.
# Outline
-- 5-10 minutes: (brief description/outline)
- - What is CLOS/EIEIO?
- - Why would I want OOP in Emacs Lisp?
- - How is the CLOS object model different from C++/Java/.NET?
- - Further reading
-
-<!--
-- 20 minutes: (brief description/outline)
- - What is CLOS/EIEIO?
- - Why would I want OOP in Emacs Lisp?
- - How is the CLOS object model different from C++/Java/.NET?
- - Generic functions
- - Methods which implement those functions
- - Specializers
- - Further reading
-
-- 40 minutes: (brief description/outline)
- - What is CLOS/EIEIO?
- - Why would I want OOP in Emacs Lisp?
- - How is the CLOS object model different from C++/Java/.NET?
- - Generic functions
- - Methods which implement them
- - Specializers
- - Example interface & demo
- - Classes
- - Slots
- - Initializing instances
- - Cloning & other miscellany
- - Inheritance
- - Method qualifiers
- - Further reading
- - Q&A
-
--->
+- What is EIEIO?
+- Why OOP?
+- The CLOS Model
+ - Classes
+ - Generic Functions
+ - Methods
+ - Specialization
+ - Method Qualifiers
+ - Multiple Inheritance
+ - Nice Properties
+- Practical Examples
+ - Encapsulation
+ - Example: `transmission.el`
+ - Abstraction
+ - Example: `sql.el`
+ - Extensibility
+ - Example: comint
+- Conclusion
+
+
[[!inline pages="internal(2021/captions/form)" raw="yes"]]
[[!inline pages="internal(2021/info/form-nav)" raw="yes"]]