46 lines
1.5 KiB
Plaintext
46 lines
1.5 KiB
Plaintext
From: news at helen.demon.nl (Ilja Heitlager)
|
|
Date: Thu, 29 Apr 1999 10:21:54 +0200
|
|
Subject: Designing Large Systems with Python
|
|
References: <m37lqz0yoa.fsf@solo.david-steuber.com> <7g669p$aer$1@nnrp1.dejanews.com>
|
|
Message-ID: <7g94b7$m31$1@news.worldonline.nl>
|
|
Content-Length: 1218
|
|
X-UID: 1559
|
|
|
|
>A good principle for this would be 'Design by Contract'.
|
|
>
|
|
>The ideal language for that IMHO would be Eiffel.
|
|
>See http://www.eiffel.com/doc/manuals/language/intro/
|
|
>for an introduction by the inventor of the language, Bertrand Meyer
|
|
>see also
|
|
>http://www.eiffel-forum.org/
|
|
>and the links at http://www.elj.com/
|
|
|
|
|
|
DbC is a good idea anyway, but don't just use Eiffel to use the principle.
|
|
Python has assertions and and there are some nice assertionpackages for Java
|
|
(using preprocessors
|
|
to insert/hide). In other words: assertions can be mimiced in (probably)
|
|
every language
|
|
|
|
Make your choice based on language constructs like modules or classes (for
|
|
modularity and abstraction ---> large systems), script or system language
|
|
(for fast code-debug cycles) and available packages. If speed is a problem
|
|
most languages offer a C-escape.
|
|
|
|
also check
|
|
http://www.python.org/workshops/1997-10/proceedings/cunningham.html
|
|
and guido's http://www.developer.com/journal/techfocus/081798_jpython.html
|
|
for the Two-language approach (HYPE!)
|
|
|
|
Anyway for large systems use something like OO language (Python and Java?),
|
|
UML (or something) and a good IDE (love to see a class browser for Python),
|
|
(re)use existing packages.
|
|
|
|
Ilja
|
|
|
|
|
|
|
|
|
|
|
|
|