Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2001:
[Freeciv-Dev] Re: Server/ruleset unification [Was [RFC PATCH] init_techs
Home

[Freeciv-Dev] Re: Server/ruleset unification [Was [RFC PATCH] init_techs

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: rf13@xxxxxxxxxxxxxxxxxxxxxx
Cc: Freeciv developers <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: Server/ruleset unification [Was [RFC PATCH] init_techs]
From: Arien Malec <arien_malec@xxxxxxxxx>
Date: Fri, 28 Sep 2001 09:42:14 -0700 (PDT)

--- Raimar Falke <hawk@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
> > simple_set_statement is intended for 
> 
> > toplevel attributes:
> 
> And that is the point. What makes such attributes toplevel attributes? 
> Why can't "huts" be under a "map" object? Why can't "ailevel hard" be
> under "aicontroll"? Why can't "min_dist_bw_cities" in another category
> (event if this is named "misc")? IMHO they are special because of
> historical reasons.

The distinction I mean between "toplevel attributes" and "object attributes" is
that, regardless of whether you call ailevel "aicontrol.ailevel" or "ailevel"
or "game.ailevel", you can treat the whole string as a unique identifier that
identifies the one and only one ailevel variable you want to modify. However,
for nation.greek.init_techs, you have to find the greek nation *first*, before
you can modify it.

I would strongly recommend that if we want to use "dotted syntax" to organize
variables, that we use a different syntax to identify objects.

e.g.

game.ailevel

vs., e.g.

nation[greek].init_techs


I'm also leaning towards the simpler set/create syntax, because it makes the
lexting and parsing code much easier. For instance, all commands can be newline
terminated.

Arien

__________________________________________________
Do You Yahoo!?
Listen to your Yahoo! Mail messages from any phone.
http://phone.yahoo.com


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