Re: Simulation Programming Skills and Python

2006-03-07 Thread Mc Osten
On Mon, 06 Mar 2006 10:48:46 -0500, Richard Blackwood wrote:

> Two, is 
> Python a good language for simulation programming?

Civilization 4 is (partly) written in Python. I suppose they thought Python
was a good language for that. I said partly because as far as I know some
code is C++ for speed reasons.

-- 
USB Priests for only 10$
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Simulation Programming Skills and Python

2006-03-06 Thread Richard Blackwood
So I can't develop and code the model simultaneously if I'm relying on
the programming skill of someone who doesn't understand what I'm
modelling? Also, say I (the hypothetical expert of knowledge domain X)
learn programming, an I necessarily going to know how to model X with
programming? When you become a full fledge programmer are you able to
see everything (relationships and so forth) as code so easily?On 6 Mar 2006 09:24:18 -0800, gene tani <[EMAIL PROTECTED]
> wrote:...The 1st question is open-ended, it's kind of like asking are
mathematicians good at music by disposition on average?  (or somethinglike that)  When you're modeling a knowledge domain with a developerwho doesn't master the details of the domain, you have to haveincredible specifications and testing, at all levels of the model

-- 
http://mail.python.org/mailman/listinfo/python-list

Re: Simulation Programming Skills and Python

2006-03-06 Thread Richard Blackwood
Okay, I really like that analogy. Not everything a carpenter can do requires an architect to draw up a blueprint though. For example, if I tell a carpenter I want a tree house with built-in seating and a window in the roof, no other requirements, can't they figure out how to do that on their own? So I then ask, what is a "good description"? Also, can't a model be well thought-out but not necessarily designed in a way compatible with the process of translation into code?
Thanks Lonnie.On 6 Mar 2006 09:05:19 -0800, Lonnie Princehouse <
[EMAIL PROTECTED]> wrote:
Object oriented languages lend themselves fairly well to this sort ofmodeling, and a strong programmer in any language should be able to
take a good description of a well thought-out model and write some codefor it.However, by far the harder part is designing a good model.  Askingwhether all programmers are capable of that is sort of like asking
whether all carpenters are architects.As for Python, it's a good language for prototyping.  The developmentcycle moves very fast, so one can experiment with many different ideasmore quickly than in Java or C++.  The price, however, is execution
speed. There are extension modules like the scipy suite which canreclaim some lost speed, but Python will generally be slower thancompiled languages.--

http://mail.python.org/mailman/listinfo/python-list

-- 
http://mail.python.org/mailman/listinfo/python-list

Re: Simulation Programming Skills and Python

2006-03-06 Thread gene tani

Richard Blackwood wrote:
> Hello all. I have a few questions about simulation programming. One, do
> all programmers know to how to code a simulation? By simulation I mean a
> model of real world relationships (i.e. like Civilization which is a
> simulation of ruling nations through various historical settings). For
> example, could someone who codes word processing application necessarily
> know how to do a simulation of economic relationships between banks and
> enterprises if he/she had access to an economist? Is the skill of being
> able to translate in one's head realworld relationships into a model
> represented by code an inherent/native skill of all programmers? Two, is
> Python a good language for simulation programming?
>

The 2nd question is easy: python is excellent for your purpose, you'll
find lots of examples googleing for "python discrete event simulation",


http://simpy.sourceforge.net/

libs for linear algebra, statistics /probability / sampling, OR
algorithms, (both native libs and hooks to C/Fortran libs like GSL,
LAPACK etc.

The 1st question is open-ended, it's kind of like asking are
mathematicians good at music by disposition on average?  (or something
like that)  When you're modeling a knowledge domain with a developer
who doesn't master the details of the domain, you have to have
incredible specifications and testing, at all levels of the model


> Thank you all!
> 
> - Richard Blackwood

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Simulation Programming Skills and Python

2006-03-06 Thread bearophileHUGS
Richard Blackwood:

>Is the skill of being able to translate in one's head realworld relationships 
>into a model represented by code an inherent/native skill of all programmers?<

I don't think so. Creating a good computational model can be a complex
art.


>Python a good language for simulation programming?<

It depends on the type of simulation. Python can be good to create a
prototype of the simulation program, and it can be good if the
simulation doesn't require much number crunching that cannot be
vectorized :-)
If the simulation require a lot of number crunching, but such
operations can be done with Numarray and the like, then you can
probably use Python or Mathematica, or similar systems.
Otherwise you may need a hybrid program (Python + Pyrex, Swig, or f2py,
ShedSkin, etc).

Bye,
bearophile

-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Simulation Programming Skills and Python

2006-03-06 Thread Lonnie Princehouse
Object oriented languages lend themselves fairly well to this sort of
modeling, and a strong programmer in any language should be able to
take a good description of a well thought-out model and write some code
for it.

However, by far the harder part is designing a good model.  Asking
whether all programmers are capable of that is sort of like asking
whether all carpenters are architects.

As for Python, it's a good language for prototyping.  The development
cycle moves very fast, so one can experiment with many different ideas
more quickly than in Java or C++.  The price, however, is execution
speed. There are extension modules like the scipy suite which can
reclaim some lost speed, but Python will generally be slower than
compiled languages.

-- 
http://mail.python.org/mailman/listinfo/python-list


Simulation Programming Skills and Python

2006-03-06 Thread Richard Blackwood
Hello all. I have a few questions about simulation programming. One, do 
all programmers know to how to code a simulation? By simulation I mean a 
model of real world relationships (i.e. like Civilization which is a 
simulation of ruling nations through various historical settings). For 
example, could someone who codes word processing application necessarily 
know how to do a simulation of economic relationships between banks and 
enterprises if he/she had access to an economist? Is the skill of being 
able to translate in one's head realworld relationships into a model 
represented by code an inherent/native skill of all programmers? Two, is 
Python a good language for simulation programming?

Thank you all!

- Richard Blackwood
-- 
http://mail.python.org/mailman/listinfo/python-list