Complete.Org: Mailing Lists: Archives: freeciv-dev: November 2003:
[Freeciv-Dev] Re: Python?
Home

[Freeciv-Dev] Re: Python?

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: Python?
From: Marek "Baczek" Baczyński <imbaczek@xxxxxxxxxxxxxx>
Date: Sun, 23 Nov 2003 14:57:40 +0100
Reply-to: Marek "Baczek" Baczyński <imbaczek@xxxxxxxxxxxxxx>

On 03-11-22 you wrote:

AL> On Sat, 22 Nov 2003 14:03:41 +0100 Raimar Falke wrote:
>> YES a language war!!!!

You see a lurker who didn't resist :D

AL> I'll give you a caveman perspective. I typed my first machine code
AL> directly into memory with a hardware (ROM) program, and felt pretty
AL> advanced when I started using an assembler, since it gave me the
AL> ability to cut and paste, and thus correct mistakes. Eventually I've
AL> learned to appreciate cut n' paste, although I still think the
AL> programmer ideally should just write it right to begin with...

In a perfect world...

AL> What scares me is when people start complaining about things like
AL> pointers, and construct languages in order not to have to learn about
AL> the fundamentals of computing.

Why is it scary? Not having to know all fundamentals of computing
lets you focus on the important thing: the problem you're trying to
solve.

Only when your problem is solved it is time to solve it efficiently.

AL> If you were a racer driver, would you use automatic gear, or listen
AL> to every hum of the engine and do it yourself? And they say if you
AL> want to learn several human laguages, you should start with studying
AL> Latin.

The question is not wheter you would use some automatic gear, but do
you really want to be a racer driver. It's easy to get killed, you
know :)

AL> I think the philosophy of Python etc. make them suitable only for
AL> limited types of specific tasks. "Focus on the task, not the tool."
AL> I don't believe in that. Focus on the tool, learn what's really going
AL> on inside, and then say "What can I make happen on my personal
AL> computer with this?"

And the benefits for the game will be? With Python, you can get
features much faster than in C, and if you don't like Python, it
isn't hard to recode Python into C. And you'll know that the version
you reimplement will work if only you care about those pointers.

Speed, OTOH, is an issue -- but not in the prototype IMHO.

AL> "C" is a nice syntax to write assembly in less lines. You don't loose
AL> any control, except for the ability to write absolute-adressing
AL> self-modifying code, which wasn't a a good idea to begin with.

And the same relation exists between Python and C. Just change this
mutating code of yours to pointers & co.

AL> If Python was an accepted standard among AI-programmers, I'd be all
AL> for it in order to attract more Freeciv coders, but the comp.ai FAQ
AL> says it's a newcomer.

Embed Lisp, then :P It's faster, predates C and is _still_ more
advanced than most of current mainstream languages. (In fact, it is
quite difficult to be more advanced than Lisp IMHO.)

In fact, almost anything that would let you change the behaviour of
the game without having to recompile it and segfault-proof when
tinkered with would do, be it Scheme, Ruby, Python, Perl (kidding!),
Lua (worth looking at!), Tcl, Ocaml...

-- 
{ Marek Baczyński :: UIN 57114871 :: GG 161671 :: JID imbaczek@xxxxxxxxxxxxx  }
{ http://www.vlo.ids.gda.pl/ | imbaczek at poczta fm | http://www.promode.org }
.. .. .. .. ... ... ...... evolve or face extinction ...... ... ... .. .. .. ..



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