Forum OpenACS Development: Re: ad_parameter deprecated in favor of parameter::get?

Posted by Andrew Piskorski on
No, at least some people seem to have thought that OpenACS's typical procedures defined with ad_proc somehow "reverse" the "normal" or "standard" Tcl conventions for passing arguments, switches, options, or what have you to a procedure, and at least by implication, that this is a bad thing. I don't see that at all, I don't think any convention whatsoever was "reversed", and that's mostly all I was trying to get at above...
Posted by Jeff Davis on
before anyone gets too wound up about flaunting the Tcl standards they should read the code in various tk and tcllib procs for handling flags and decide if they like the internals better there.

Personally I don't like having to roll my own parameter parsing and I like the convenience and robustness of ad_procs arg parser (which is really a side benefit and the real advantage is the documentation stanza).

Also, the abomination that is db_multirow is not a consequence of anything planned or of ad_proc or anything else, rather it is in the state it's in because it was modeled on db_foreach (which used proc_doc) and it looks the way it looks since it started life without the ad_proc arg parser, sprouted warts over time and has a combination of internal hand rolled option parsing (the above mentioned "standard" convention) and ad_proc parsing for some things that were added subsequently.

On the other hand I don't see people getting it wrong in their code so I don't think its a problem that it has some cruft.