Comment by throwaway_yy2Di
13 years ago
Here's a transcript for you! (Made with Emacs, appropriately).
How Emacs changed my Life Yukihiro "Matz" Matsumoto @yukihiro_matz
1980
I started programming
BASIC
400 steps
1988
I met Emacs
on Sun-3
shared by 200 undergraduates
I tried Emacs
but I never used
Emacs was prohibited
It consumed too much precious memory
We are free to download free software
We are free to read the source code
I downloaded Emacs source code
and investigated
Emacs was my first Lisp interpreter
I learned a lot about language implementation from Emacs
Embedding integers in pointers
Mark and sweep garbage collection
Calling convention between Lisp and C
I really understood how Lisp work
I was fascinated by Lisp objects
Lisp objects implemented by C
Then I got a Sparc Station
I started to use Emacs
Emacs become part of me
If I didnt like anything in Emacs, I could change it
Emacs is totally configurable
Emacs made me realize anything can be changed by a programmer
It is total freedom
I could edit without thinking key binding
I didnt want to write anything without Emacs
Programs, Documents and Mails
so I wrote my own mail client
named "cmail"
in Emacs lisp
It was my first non-trivial (Emacs) Lisp program
I used it everyday
1993
I started Ruby development
with influence from Emacs implementation
Integers are coded in tagged pointers
It uses simple mark andsweep garbage collector
It uses similar object model to Lisp
Then I put Smalltalk-like OO system on top
For syntax, I wanted Algol/Ada/ Eiffel like one
But as an Emacs addict, I needed a language mode
auto-indent was a must
Back in 1993, there was no auto-indenting language mode for a language with such syntax
So I tried to write experimental ruby-mode.el
fighting with emacs lisp and regular expression,
for almost whole week
I somehow succeeded to implement auto-indentation
for a language with "end" delimiters
If I couldnt make ruby-mode to work
the syntax of Ruby would have changed
to more C-like one
too similar to other scripting languages
as a result, Ruby would nothave gained current popularity
Summary
1. Emacs taught me freedom for software
2. Emacs taught me how to read code
3. Emacs taught me power of Lisp
4. Emacs taught me how to implement a language core
5. Emacs taught me how to implement a garbage collector
6. Emacs helped me to code and debug
7. Emacs helped me to writeand edit text/mails/documents
8. Emacs helped me to be a effective programmer
9. Emacs made me a hacker
10. Emacs has changed my life
forever
Thank you