Boost PC performance: How more available memory can improve productivity
Paredit Preso
1. Bay Area Clojure Meetup
functional lispers
December 3, 2009
Runa Galactic Headquarters
Friday, December 4, 2009
2. paredit
At first it sucks, but then it’s awesome.
mudphone (kyle oba)
irc / twitter / github
runa employee 9
Friday, December 4, 2009
3. about runa
We are simultaneously the largest cloud-based
manufacturer, distributor, and consumer of
Bavarian-style pretzels, nationally.
http://www.flickr.com/photos/bellalago/3938498023/
Friday, December 4, 2009
4. and we’re hiring
clojure-hbase-ruby-hadoop-rails-javascript-chefs
Friday, December 4, 2009
6. Q: What is paredit?
A: paredit is a minor mode for Emacs,
created by Taylor R. Campbell.
Friday, December 4, 2009
7. commit 2ecf00a124062d7b4c4538f79426bc19c6b11b83
Author: Philip (flip) Kromer <flip@infochimps.org>
Date: Mon Aug 24 23:38:14 2009 -0500
Paredit fucking sucks my balls
So, why paredit?
Friday, December 4, 2009
8. Because, these are your father’s parentheses...
http://xkcd.com/297/
Friday, December 4, 2009
9. http://technomancy.us/126
Hingebjerg – 2009-06-01T14:05:40Z
Hi Phil,
Just installed the emacs-starter-kit and clojure-mode, and i can't delete
curly braces when in clojure-mode. Is there a logical explanation for that?
Phil – 2009-06-12T09:37:15Z
Hingebjerg: That's a feature of paredit-mode; it enforces that you can't
delete parens (or other matched chars) unless they're empty so you
don't end up with invalid structure in your code. It's unbelievably handy/
addictive once you get used to it, but if you're not sure what's going on it
can be pretty annoying.
Friday, December 4, 2009
10. 0/8 why
1/8 balancing
2/8 basic insertion commands
3/8 deleting & killing
4/8 movement & navigation
5/8 depth-changing commands
6/8 barfage & slurpage
7/8 miscellaneous commands
8/8 in the wild (tips & tricks)
Friday, December 4, 2009
14. you’re using the emacs starter kit
or, you’re already familiar setting the modes up
you’ve got paredit and show-parens modes
M-x paredit-mode
M-x show-paren-mode
Friday, December 4, 2009
15. install?
;;; Install paredit by placing `paredit.el' in `/path/to/elisp', a
;;; directory of your choice, and adding to your .emacs file:
;;;
;;; (add-to-list 'load-path "/path/to/elisp")
;;; (autoload 'paredit-mode "paredit"
;;; "Minor mode for pseudo-structurally editing Lisp code."
;;; t)
;;;
;;; Toggle Paredit Mode with `M-x paredit-mode RET', or enable it
;;; always in a major mode `M' (e.g., `lisp' or `scheme') with:
;;;
;;; (add-hook M-mode-hook (lambda () (paredit-mode +1)))
http://mumble.net/~campbell/emacs/paredit.el
Friday, December 4, 2009
74. M-x butterfly
http://xkcd.com/378/
Friday, December 4, 2009
75. add paredit to the SLIME REPL
;; enable paredit in slime repl
(add-hook 'slime-repl-mode-hook (lambda () (paredit-mode +1)))
Karol Skocik - http://coding.derkeiler.com/Archive/Lisp/comp.lang.lisp/2007-07/
Friday, December 4, 2009
76. customize
;;; Customize paredit using `eval-after-load':
;;;
;;; (eval-after-load 'paredit
;;; '(progn ...redefine keys, &c....))
;;;
;;; ... Now `)' is bound to a
;;; command that does not insert a newline, and `M-)' is bound to the
;;; command that inserts a newline. To revert to the former behaviour,
;;; add the following forms to an `eval-after-load' form for paredit.el
;;; in your .emacs file:
;;;
;;; (define-key paredit-mode-map (kbd ")")
;;; 'paredit-close-round-and-newline)
;;; (define-key paredit-mode-map (kbd "M-)")
;;; 'paredit-close-round)
http://mumble.net/~campbell/emacs/paredit.el
Friday, December 4, 2009