[Types-sig] Request and suggestions for proceeding

Golden, Howard GoldenH@littoncorp.com
Mon, 23 Nov 1998 11:59:15 -0800


I am closer to a Python newbie than a language lawyer, but I hope you will
consider my request and suggestions for how to proceed with this SIG's task.
*	I believe that there may be a fundamental difference of goals among
the interested parties, so I suggest making the goals explicit.
*	I believe that discussions can become overly intricate when dealing
with unstated hypothetical situations. Therefore, I suggest stating concrete
problems to solve.
Let me take a whack at this:
---- What are my goals? ----
[From the Executive Summary:]
"Python is an interpreted, interactive, object-oriented programming
language. It is often compared to Tcl, Perl, Scheme or Java.
"Python combines remarkable power with very clear syntax. It has modules,
classes, exceptions, very high level dynamic data types, and dynamic
typing...."
[My position:]

I want to develop large systems in Python, rather than C/C++ or Visual
Basic, and I want to be able to reuse my code as well as others.

I value the interactive nature of Python's implementation, but is this an
essential feature of the language?  Similarly, being interpreted and
dynamically typed have caused certain essential design decisions.  These may
conflict with other desirable attributes.  Specifically, dynamic typing is
great for scripting but not for programming in the large.  Therefore, I
state my concerns:

*	I value the "very high level" list and dictionary data types.
*	I value the object oriented features.
*	I want to have optional static data typing and optionally required
variable declaration, especially for type and "typo" safety, but also for
performance.
*	I would prefer the (optional?) replacement of current namespace
rules (local vs. global allows global variable access but only local
variable modification), with something more like C/C++ (i.e., static rather
than dynamic).
*	I want to use generic programming (especially being able to
incorporate others' generic routines).  However, I am unsure how this
impacts the other features.

From my perspective, there are many lurking rattlesnakes in the current
mixture of language and implementation, especially for someone coming to
Python from C/C++.

----What problems do I want to solve?----

For me, as stated above, I want to be able to use Python, rather than C/C++
or Visual Basic, to develop large business applications, especially using
GUIs and databases.  Basically, anything that Microsoft currently trots out
Visual C++ for, I'd like to do in Python.  (If you'll permit me to say it, I
believe Python is the right way to do what Visual Basic was designed for.)
I value the large system programming features more than the scripting and
glue features.

----Summary----

What are the goals for Python?  What problems are we trying to solve?  Once
these are clearer, it will be easier to choose which language and
implementation alternatives to pursue.

I have stated my goals.  I recognize these may not be GvR's goals, or the
goals of the Python community.  If meeting my goals is in conflict with some
goals you may have, I hope you will specifically describe your goals, so
that I can try to understand them better.

Respectfully,

Howard B. Golden
Software developer
Corporate Office
Litton Industries, Inc.
Woodland Hills, California