How Emacs changed my life

4 min read Original article ↗
  • 1.

    How Emacs changed my Life Yukihiro "Matz" Matsumoto @yukihiro_matz Powered by Rabbit 0.9.2

  • 2.

      1980 1/74 Powered by Rabbit 0.9.2

  • 3.
  • 4.

      3/74 Powered by Rabbit 0.9.2

  • 5.

      BASIC 4/74 Powered by Rabbit 0.9.2

  • 6.

      400 steps 5/74 Powered by Rabbit 0.9.2

  • 7.

      1988 6/74 Powered by Rabbit 0.9.2

  • 8.
  • 9.

      on Sun-3 8/74 Powered by Rabbit 0.9.2

  • 10.

      shared by 200undergraduates 9/74 Powered by Rabbit 0.9.2

  • 11.
  • 12.

      but I neverused 11/74 Powered by Rabbit 0.9.2

  • 13.
  • 14.

      It consumed toomuch precious memory 13/74 Powered by Rabbit 0.9.2

  • 15.

      We are freeto download free software 14/74 Powered by Rabbit 0.9.2

  • 16.

      We are freeto read the source code 15/74 Powered by Rabbit 0.9.2

  • 17.
  • 18.
  • 19.

      Emacs was myfirst Lisp interpreter 18/74 Powered by Rabbit 0.9.2

  • 20.

      I learned alot about language implementation from Emacs 19/74 Powered by Rabbit 0.9.2

  • 21.
  • 22.

      Mark and sweepgarbage collection 21/74 Powered by Rabbit 0.9.2

  • 23.
  • 24.
  • 25.
  • 26.
  • 27.

      Then I gota Sparc Station 26/74 Powered by Rabbit 0.9.2

  • 28.

      I started touse Emacs 27/74 Powered by Rabbit 0.9.2

  • 29.
  • 30.

      If I didn'tlike anything in Emacs, I could change it 29/74 Powered by Rabbit 0.9.2

  • 31.
  • 32.

      Emacs made me realize anything can be changed by a programmer 31/74 Powered by Rabbit 0.9.2

  • 33.

      It is totalfreedom 32/74 Powered by Rabbit 0.9.2

  • 34.

      I could editwithout thinking key binding 33/74 Powered by Rabbit 0.9.2

  • 35.

      I didn't wantto write anything without Emacs 34/74 Powered by Rabbit 0.9.2

  • 36.
  • 37.

      so I wrotemy own mail client 36/74 Powered by Rabbit 0.9.2

  • 38.
  • 39.
  • 40.

      It was myfirst non-trivial (Emacs) Lisp program 39/74 Powered by Rabbit 0.9.2

  • 41.

      I used iteveryday 40/74 Powered by Rabbit 0.9.2

  • 42.

      1993 41/74 Powered by Rabbit 0.9.2

  • 43.
  • 44.
  • 45.
  • 46.

      It uses simplemark and sweep garbage collector 45/74 Powered by Rabbit 0.9.2

  • 47.

      It uses similarobject model to Lisp 46/74 Powered by Rabbit 0.9.2

  • 48.

      Then I putSmalltalk-like OO system on top 47/74 Powered by Rabbit 0.9.2

  • 49.

      For syntax, Iwanted Algol/Ada/ Eiffel like one 48/74 Powered by Rabbit 0.9.2

  • 50.

      Butas an Emacs addict, I needed a language mode 49/74 Powered by Rabbit 0.9.2

  • 51.
  • 52.

      Back in 1993,there was no auto-indenting language mode for a language with such syntax 51/74 Powered by Rabbit 0.9.2

  • 53.

      So I triedto write experimental ruby-mode.el 52/74 Powered by Rabbit 0.9.2

  • 54.

      fighting with emacslisp and regular expression, 53/74 Powered by Rabbit 0.9.2

  • 55.
  • 56.

      Isomehow succeeded to implement auto-indentation 55/74 Powered by Rabbit 0.9.2

  • 57.

      for a languagewith "end" delimiters 56/74 Powered by Rabbit 0.9.2

  • 58.

      If I couldn'tmake ruby-mode to work 57/74 Powered by Rabbit 0.9.2

  • 59.

      the syntax ofRuby would have changed 58/74 Powered by Rabbit 0.9.2

  • 60.
  • 61.

      too similar toother scripting languages 60/74 Powered by Rabbit 0.9.2

  • 62.

      asa result, Ruby would not have gained current popularity 61/74 Powered by Rabbit 0.9.2

  • 63.

      Summary 62/74 Powered by Rabbit 0.9.2

  • 64.

      1. Emacs taughtme freedom for software 63/74 Powered by Rabbit 0.9.2

  • 65.

      2. Emacs taughtme how to read code 64/74 Powered by Rabbit 0.9.2

  • 66.

      3. Emacs taughtme power of Lisp 65/74 Powered by Rabbit 0.9.2

  • 67.

      4. Emacs taughtme how to implement a language core 66/74 Powered by Rabbit 0.9.2

  • 68.

      5.Emacs taught me how to implement a garbage collector 67/74 Powered by Rabbit 0.9.2

  • 69.

      6. Emacs helpedme to code and debug 68/74 Powered by Rabbit 0.9.2

  • 70.

      7. Emacshelped me to write and edit text/mails/documents 69/74 Powered by Rabbit 0.9.2

  • 71.

      8. Emacs helpedme to be a effective programmer 70/74 Powered by Rabbit 0.9.2

  • 72.

      9. Emacs mademe a hacker 71/74 Powered by Rabbit 0.9.2

  • 73.

      10. Emacs haschanged my life 72/74 Powered by Rabbit 0.9.2

  • 74.

      forever 73/74 Powered by Rabbit 0.9.2

  • 75.

      Thank you 74/74 Powered by Rabbit 0.9.2