Subject: Re: RFC: Lisp/Scheme with less parentheses through Python-like    significant   indentation?
From: Erik Naggum <>
Date: 2000/08/11
Newsgroups: comp.lang.lisp
Message-ID: <>

* Paul Fernhout <>
| On a tangent, could it be that the reason for a lot of cut and paste
| in Lisp is precisely because it is so hard to get all those
| parentheses consistent or configured correctly for a specific
| operation (when typing them in by hand)?

  There isn't "a lot of" cut and paste in Lisp, but _when_ you want to
  move or copy whole expressions, Emacs users double-click on one of
  the parentheses and the whole expression is instantly highlighted
  and ready for copy (at least under X -- Windows requires a lot more
  manual labor, as is usual).  This is even used to see the whole
  expression better in a nested form.  Also, when people need to move
  expressions around, they have tools in Emacs like transpose-sexp,
  which I suppose you would do with transpose-lines or something...

  I once said: "Those who do not know Lisp are doomed to reinvent it"
  in an Emacs setting.  This is a Lisp setting, so maybe I should say:
  "Those who do not know Emacs are doomed to reinvent it".

| I'd like to come to a full understanding of what exactly it is about
| indentation that makes cut and paste in Lisp so awkward.

  Suppose you have an expression at indentation level N.  Copy it to a
  place where indentation level M prevails.  How much work do you need
  to do to get the indentation right?  In a fully parenthesized Lisp,
  you have tools to do this for you.  In a less parenthesized Lisp,
  you have no tools, but must shift the newly copied block of code
  right or left more or less by hand.

  If this is not what you expected, please alter your expectations.