Re: CVS update: php3/functions
| From: | Rasmus Lerdorf | Date: | Thu, 01 Jan 1970 00:00:00 +0000 |
| Subject: | Re: CVS update: php3/functions | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-2361@lists.php.net to get a copy of this message | ||
> can you explain the usage of prototypes. I thing of some sort of etags but
> can not get behind the magic.
There are a couple of things behind them.
First, we need a way to keep the online docs in synch with the actual
code. Right now there are a lot of mistakes with respect to the number
and types of arguments of functions in the online docs. Having the
prototypes right in the source code reminds developers to change them
there if they change the code and when we run the analysis scripts we can
pick out discrepancies between the real prototype and the documented
prototypes. And, a more pressing need is that O'Reilly is updating their
WebMaster's Guide and will have an extensive chapter on PHP in it. One of
the things they want is a complete list of all functions, their prototypes
and a one-line description for each. I started to simply pick these out
of the online docs but found that too many of them were wrong. I had to
check each one manually and it became a very large drag for me to do.
Hence the push to just do it once now and when we need such a list in the
future it will be trivial to generate it.
This auto-generated function list also makes it possible to perhaps
generate cheat sheets and quick-reference things quickly. Also see my
other post regarding making data files for editors.
And lastly, the {{{ and }}} characters you see and Emacs-style folding
characters. If you install the folding module and turn it on then these
source files will be more manageable in that you just see a list of
functions. If you want to modify a particular function you simply move
your cursor to the function name and perform some sort of magical ritual
Emacs keystroke spell and this "folded" function will be unfolded and you
can work on it. For large files, this makes it much easier to scroll
around and work with it. I have also talked to the guy developing the
folding support for vim and he has assured me that these same {{{ and }}}
characters will be able to denote a folded block in vim5 when it supports
folding.
In case anybody is wondering about this O'Reilly WebMaster's guide and
whether there is money involved. Supposedly we will get a portion of the
royalties proportionate to the amount of the book we actually contribute.
I have been doing a good bit of the work, but much of the material has
been scammed from the real PHP book and the online docs. As such, any
profits that come in the form of royalties from this chapter (which I
can't imagine to be much) will go to the PHP Development Fund.
-Rasmus
--
PHP Development Mailing List http://www.php.net/
To unsubscribe send an empty message to php-dev-unsubscribe@lists.php.net
For help: php-dev-help@lists.php.net