Definite or indefinite article for non-singletons?

Cameron Simpson cs at cskk.id.au
Sun Jul 28 22:59:30 EDT 2019


On 29Jul2019 10:15, Chris Angelico <rosuav at gmail.com> wrote:
>On Mon, Jul 29, 2019 at 10:06 AM Richard Damon <Richard at damon-family.org> wrote:
>> When talking of empty strings, we need to look a bit at context.  "The
>> empty string" implies that there is only one of them, and if we are
>> talking about values, then there is only one empty string values, so
>> "The empty string value" would be correct (and the term value might be
>> implied by context). If we are talking about object, like with the
>> python word "is", then the empty string is not promised to be a
>> singleton, so grammatically, it should be "A empty string object", and
>> again the term object might be implied by the context.
>
>So I guess the original question can be reworded as:
>
>When you're describing indistinguishable objects, are you really
>talking about objects, or are you talking about values?
>
>With numbers, it's pretty obvious that you talk about values. You can
>logically say "if the spamminess is zero, blah blah blah" even though
>you'd actually say "if spam == 0:" in the code. With strings, is it
>therefore logical to say "is the empty string" even though you'd
>actually be comparing to see if it "==" another empty string?

I wouldn't be saying "the empty string". I'd being describing the 
string: "if the string is empty", "if s is an empty string", etc. So 
values again.

I think the wish to use the phrasing "the empty string" either comes 
from an implied metaphorthat assumes deduped immutable objects or from a 
mathematical background where eg in set theory one talks about "the 
empty set". Someone else posted a better description of the methematical 
context, where "the empty set" is effectively naming a category of sets 
(those of size 0) and considering that a single thing in that context.

I'm for running with "values" in the example you started with. I think 
the "the empty string" is mathematical context specific terminology 
leaking into the wrong domain.

Cheers,
Cameron Simpson <cs at cskk.id.au>



More information about the Python-list mailing list