all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Daniel Brockman <daniel@brockman.se>
To: emacs-devel@gnu.org
Subject: Re: constant `e'
Date: Mon, 12 Feb 2007 21:37:19 +0100	[thread overview]
Message-ID: <871wkv6rk0.fsf@wigwam.brockman.se> (raw)
In-Reply-To: 45328.128.165.123.18.1171307877.squirrel@webmail.lanl.gov

"Stuart D. Herring" <herring@lanl.gov> writes:

>> The `case' macro already allows `otherwise'.  That's a
>> pretty compelling reason to allow it in `cond' as well.
>> (Yes, I know `case' is in the `cl' library, but lots of
>> people use that library --- at least its macros.)
>
> The `case' macro allows it because t is already a special case there (case
> clauses are not conditions), and so giving it an unusual name reduces the
> surprise.  In `cond', each clause by definition begins with an expression
> evaluated as a condition.  Any problems whatsoever in immediately and
> fully understanding the function of t in such a circumstance are so
> fundamental that they -should- be called out by the syntax and addressed
> rather than allowed to continue by an English-like special case.

That is a straw man.  Nobody is confused about what `t'
means in a `cond' clause and nobody would be if `otherwise'
were introduced.  Come on, this is basic stuff.

> (Imagine what would happen if someone, perhaps to shush
> the byte-compiler, set `otherwise' to nil, and how much
> worse if the person debugging thought that `case' treated
> that symbol specially!)

Yes, wouldn't that be a crazy idea!

Now imagine what would happen if 1 + 5 were equal to 12.
That's right.  Mixing juice would get you twice as much.

There's no reason why `otherwise' couldn't be a special case
in the `cond' macro, as it is in `case'.

> I am sure that not everyone agrees with my thoughts on the matter, and
> that there are good arguments against them, but it is my general
> contention that programmers would do well spending more time learning
> their languages and tools and less time divising clever tricks in an
> attempt to make such learning unnecessary for others.  The tricks
> typically succeed in preventing the learning but not in transcending it.

I don't aim to make learning unnecessary for others.

The simple and embarrasing truth is that I think `otherwise'
looks pretty.  It makes me feel warm and fuzzy inside.

Everyone else disagrees.  I shut up.  End of thread.

-- 
Daniel Brockman <daniel@brockman.se>

  reply	other threads:[~2007-02-12 20:37 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-09  7:37 constant `e' Drew Adams
2007-02-09  9:32 ` Juanma Barranquero
2007-02-09 11:24   ` Kim F. Storm
2007-02-09 15:08   ` Stefan Monnier
2007-02-09 15:19     ` Juanma Barranquero
2007-02-09 15:34       ` Stefan Monnier
2007-02-10 17:40       ` Richard Stallman
2007-02-09 18:33     ` Jay Belanger
2007-02-09 18:51       ` Stefan Monnier
2007-02-09 14:23 ` Richard Stallman
2007-02-09 14:32   ` Leo
2007-02-09 23:11     ` Kim F. Storm
2007-02-10  0:16       ` Drew Adams
2007-02-12 18:11         ` Stuart D. Herring
2007-02-10 17:39     ` Richard Stallman
2007-02-09 14:37   ` David Kastrup
2007-02-10 17:39     ` Richard Stallman
2007-02-09 15:33   ` Drew Adams
2007-02-09 16:30     ` Eli Zaretskii
2007-02-09 16:50       ` Drew Adams
2007-02-10  9:49         ` Eli Zaretskii
2007-02-09 23:07   ` Dieter Wilhelm
2007-02-10 17:39     ` Richard Stallman
2007-02-10 18:41     ` Slawomir Nowaczyk
2007-02-10 21:12       ` Dieter Wilhelm
2007-02-10  9:29   ` Kevin Rodgers
2007-02-10 19:13     ` Stefan Monnier
2007-02-10 19:22       ` Lennart Borgman (gmail)
2007-02-10 19:38         ` Stefan Monnier
2007-02-10 20:32           ` Lennart Borgman (gmail)
2007-02-12  5:04             ` Kevin Rodgers
2007-02-12 16:06               ` Drew Adams
2007-02-10  6:27 ` Daniel Brockman
2007-02-10  8:59   ` David Kastrup
2007-02-10 11:35     ` Daniel Brockman
2007-02-10 12:01       ` David Kastrup
2007-02-10 12:42         ` Daniel Brockman
2007-02-10 12:43       ` Alan Mackenzie
2007-02-10 14:33         ` Daniel Brockman
2007-02-10 18:05           ` Alan Mackenzie
2007-02-10 18:29             ` Daniel Brockman
2007-02-12 19:03           ` Stuart D. Herring
2007-02-12 19:57             ` Daniel Brockman
2007-02-10 17:38         ` David Kastrup
2007-02-10 18:15           ` Daniel Brockman
2007-02-12 18:51           ` Stuart D. Herring
2007-02-10 19:05       ` Stefan Monnier
2007-02-10 20:48         ` Daniel Brockman
2007-02-10 21:06           ` Stefan Monnier
2007-02-11  9:42           ` David Kastrup
2007-02-11 17:53             ` Daniel Brockman
2007-02-10 21:34       ` Edward O'Connor
2007-02-12 19:17       ` Stuart D. Herring
2007-02-12 20:37         ` Daniel Brockman [this message]
2007-02-12 20:40           ` David Kastrup
2007-02-10 17:41   ` Richard Stallman
2007-02-10  9:02 ` Alan Mackenzie
2007-02-10  9:51   ` Jason Rumney
2007-02-12 18:16     ` Stuart D. Herring
2007-02-10 15:13   ` Juanma Barranquero
2007-02-10 19:12   ` Stefan Monnier
2007-02-11  0:43   ` David Hansen
2007-02-11  1:13     ` Jay Belanger
2007-02-11  1:24   ` Drew Adams
2007-02-10 18:53 ` Chong Yidong
  -- strict thread matches above, loose matches on Subject: below --
2007-02-13  2:34 djh
2007-02-13  8:23 ` Werner LEMBERG

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=871wkv6rk0.fsf@wigwam.brockman.se \
    --to=daniel@brockman.se \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.