[Types-sig] PyDL RFC 0.02

Paul Prescod paul@prescod.net
Mon, 27 Dec 1999 18:49:01 -0500

Greg Stein wrote:
> Windows 9x people can very well have problems. The underlying filesystem
> is still 8.3. I continued to see issues with the name mapping between long
> and short. Mostly, it appears with certain APIs and the registry.
> Seriously: avoid more than .3 if possible.

Okay, .pyi will be the extension but I won't give up on the pun as the
formal name for the language without more teeth pulling (and I've just
had my wisdom's removed so my tolerance level is high).

> "in the future" is a *long* ways off when there hasn't been any real
> discussion on if/how to deal with the multiple namespace issue. Relying on
> a solution to appear is asking for trouble (IMO).

It seems to me that the simplest solution is to move the "types"
namespace BEHIND the __builtin__ namespace.

> However: I'm still against adding a whole new namespace. I haven't seen a
> good argument for why it is needed. Can somebody come up with a concise
> rationale?

Well there are a few issues and I admit to having not thought all of
them through completely yet:

* importing modules are supposed to only see exported attributes. For
instance dir() should only show exported attributes.

* the two namespace arrangement is similar to the way that a class'
namespace is segmented from that of instances.

* Types are independent objects but variable declarations need to be
somehow unified with the declared objects.

* But we also need an API to query type information associated with a
name (instead of the value bound to the name)

* Type expressions can make forward references. So when they are
embedded in Python code we still won't think of them as ordinary

I have not put a lot of thought into this part of the system and am open
to suggestions of how to get all of this to work.

 Paul Prescod