On Mon, Sep 24, 2007 at 07:57:31AM +0000, David Kastrup wrote: > "David Symonds" <dsymonds@xxxxxxxxx> writes: > > > On 24/09/2007, David Kastrup <dak@xxxxxxx> wrote: > >> Mike Hommey <mh@xxxxxxxxxxxx> writes: > >> > >> > On Sun, Sep 23, 2007 at 10:42:08PM +0200, David Kastrup wrote: > >> >> -while case $# in 0) break ;; esac > >> >> +while test $# != 0 > >> > > >> > Wouldn't -ne be better ? > >> > >> Why? > > > > Because -ne does a numeric comparison, != does a string comparison, > > and it's a numeric comparison happening, semantically speaking. > > I don't see the point in converting $# and 0 into numbers before > comparing them. "!=" is quite more readable, and the old code also > compared the strings. Fwiw $# already is a number. Hence test $# -ne 0 is definitely a better test. $# != 0 would yield sth like (strcmp(sprintf("%d", argc), "0")) $# -ne 0 would yield sth like (argc != atoi("0")). Not that it matters much, but the latter looks better to me. -- ·O· Pierre Habouzit ··O madcoder@xxxxxxxxxx OOO http://www.madism.org
Attachment:
pgpzqK23mq5C9.pgp
Description: PGP signature