Complete.Org: Mailing Lists: Archives: freeciv-dev: March 2004:
[Freeciv-Dev] [Fwd: Returned mail: see transcript for details ... Freeci
Home

[Freeciv-Dev] [Fwd: Returned mail: see transcript for details ... Freeci

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: jdorje@xxxxxxxxxxxxxxxxxxxxx
Subject: [Freeciv-Dev] [Fwd: Returned mail: see transcript for details ... Freeciv-Dev] Re: (PR#8299) wrapping GUI coordinates
From: "rwetmore@xxxxxxxxxxxx" <rwetmore@xxxxxxxxxxxx>
Date: Thu, 25 Mar 2004 10:34:24 -0800
Reply-to: rt@xxxxxxxxxxx

<URL: http://rt.freeciv.org/Ticket/Display.html?id=8299 >


-------- Original Message --------
Subject: Returned mail: see transcript for details
Date: Thu, 25 Mar 2004 10:11:39 -0800
From: Mail Delivery Subsystem <MAILER-DAEMON@xxxxxxxxxxxxxx>
To: <rwetmore@xxxxxxxxxxxx>

The original message was received at Thu, 25 Mar 2004 10:11:38 -0800
from www.freeciv.org [207.158.49.130]

    ----- The following addresses had permanent fatal errors -----
"|/usr/bin/procmail /home/rt3/.procmailrc -m ACTION=correspond"
     (reason: Service unavailable)
     (expanded from: <rt@xxxxxxxxxxxxxx>)

    ----- Transcript of session follows -----
smrsh: "procmail" not available for sendmail programs (stat failed)
554 5.0.0 Service unavailable
=====

And the dumped payload ...


One needs to be a bit careful about the need for the lowest level
idiot to have crystal clear understanding of the most complex pieces
of code that they will never have to use or update anyway.

Maintainers of macros and other complex coding generator forms
need to understand them in explicit detail - something that is
actually lacking in many cases of people who just think they do.

Maintainers and developers that use the code need only understand
the fully documented interface, and not the implementation detail
or mechanics, since they should never in their inexperience be
touching this code.

There are thus two levels of operability with docs bridging the two.
Hide obscure code in common include files (not *.h but files just
included in the main *.h), and make sure the interfaces and documented
detail is all in the main header that everyone uses to develop code
rather than maintain its components.


Also, cpp or m4 is a generic widespread tool. Choosing from
a random host of newer and less reliable/widespread tools like
python, Joe's scripter, or whatnot is a bad way to go. A *small*
selected set of generators like 1 or 3 is all that should ever
be used, i.e. the core tool like cpp and one or two others with
some special need.


Cheers,
RossW
=====

Jason Short wrote:

 > <URL: http://rt.freeciv.org/Ticket/Display.html?id=8239 >
 >
 > Raimar Falke wrote:
 >
 >
 >>> (Except perhaps that a generator'ed speclist header file is much easier to
 >>> read than speclist.h)
 >>
 >>
 >> You don't need to read speclist.h as a normal programmer.
 >
 >
 >
 > That's not true.  Functions (like unit_list_init) are *only* documented in 
 > speclist.h.  For most people reading the source code may not be very 
 > helpful, however.  There are comments explaining the usage.
 >
 >
 > I'm not generally in favor of generators, but Per's right about the problems 
 > with the current speclist system.  It is very clever, but still a hack.  And 
 > using it requires some understanding of its cleverness, which is time that 
 > could be spent elsewhere (of course all time is time that could be spent 
 > elsewhere).
 >
 > jason






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