Complete.Org: Mailing Lists: Archives: freeciv-dev: May 2000:
[Freeciv-Dev] Re: OO model for Freeciv?
Home

[Freeciv-Dev] Re: OO model for Freeciv?

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Peter Schaefer <schaefer@xxxxxx>
Cc: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: OO model for Freeciv?
From: Jules Bean <jmlb2@xxxxxxxxxxxxxxxx>
Date: Tue, 2 May 2000 14:12:08 +0100

On Tue, May 02, 2000 at 03:09:14PM +0200, Peter Schaefer wrote:
> 
> >I'd suggest to not only change the programming language (BTW what about
> >Python? or several programming languages?) but to work on the
> >architecture as well - I'd like to see the "Freeciv client/server model"
> >outside a gaming environment, e. g. for distributed or offline
> >(e-mail-communicating) applications or "thin client" frontends. Probably
> >an extension to the GNOME architecture.
> >
> 
> Last time I saw civ in python (by some guy ~sreiz in .nl)
> the python->graphics interface seemed quite slow to me.
> Doesnt have to say anything of course.
> 
> How about perl ? Everything could be hashed, all ai calculations be cached
> in hashes 8o)

Python has hashes too. (It calls them 'dictionaries' since the python
authors know the difference between a logical data structure and the
algorithm chosen to implement it).

In any case, it seems to me that a weakly typed language, which python
and perl both are, is inappropriate for freeciv.  If we are to go OO,
we want a language which enables us to code the concepts
list-of-units, hash-of-units, etc --- i.e. strongly typed containers
--- which the STL gives us.

(It's actually possible to implement strongly typed containers in
python and perl, since they both have a version of RTTI, but it would
all need writing --- there's no accepted 'standard' strongly typed
container system AFAIK, and no templating mechanism)

Jules

-- 
Jules Bean                          |        Any sufficiently advanced 
jules@{debian.org,jellybean.co.uk}  |  technology is indistinguishable
jmlb2@xxxxxxxxxxxxxxxx              |               from a perl script



[Prev in Thread] Current Thread [Next in Thread]