summaryrefslogtreecommitdiffstats
path: root/2021
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2021-11-25 17:18:19 -0500
committerSacha Chua <sacha@sachachua.com>2021-11-25 17:18:19 -0500
commit63fa68ed2a2582701105ac057eb2e3d95adb9569 (patch)
tree152c18f1d8db90c46876c1a35a452f3bd632d9ff /2021
parent160cf6e445b350e2c26c0a7d49bf68f9f4665b9f (diff)
parentf72dd131616fbb8d4a96c69e05bdd7b6e840889a (diff)
downloademacsconf-wiki-63fa68ed2a2582701105ac057eb2e3d95adb9569.tar.xz
emacsconf-wiki-63fa68ed2a2582701105ac057eb2e3d95adb9569.zip
Merge branch 'master' of git.emacsconf.org:emacsconf-wiki
Diffstat (limited to '')
-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"]]