From macrakis at alum.mit.edu  Wed Sep  2 20:54:45 2009
From: macrakis at alum.mit.edu (Stavros Macrakis)
Date: Wed, 2 Sep 2009 14:54:45 -0400
Subject: [Rd] Documentation for is.atomic and is.recursive
In-Reply-To: <8b356f880909021139pa07d922q1f1c28a0fb70cdbe@mail.gmail.com>
References: <8b356f880909021139pa07d922q1f1c28a0fb70cdbe@mail.gmail.com>
Message-ID: <8b356f880909021154r22b8d14ajd7627fcf3263b444@mail.gmail.com>

On Wed, Sep 2, 2009 at 2:39 PM, Stavros Macrakis<macrakis at alum.mit.edu> wrote:

> ???? Most types of language objects are regarded as recursive: those
> ???? which are not are the atomic vector types, 'NULL' and symbols (as
> ???? given by 'as.name').
>
> But is.recursive(as.name('foo')) == is.recursive(quote(foo)) == FALSE.

Sorry, this *is* consistent with the behavior.  But if we read "the
atomic vector types, 'NULL' and symbols" as a list of mutually
exclusive categories, then is.atomic(NULL)==FALSE is inconsistent.

              -s



[Rd] Documentation for is.atomic and is.recursive
Stavros Macrakis