Forum OpenACS Q&A: Response to A Template-Based ACS

Collapse
Posted by Don Baccus on
The view that the Tcl is just ACS "plumbing" is ridiculous, and IMO is  a major reason why the ACS is such a hodge-podge.  Time-pressure resulting from customer contracts are also and important reason, but if aD paid as much attention to the design of the Tcl infrastructure as is paid to the datamodel, the ACS would be a heck of a lot easier to understand, would be more maintainable, and less error-prone to begin with.  The notion that the Tcl is "plumbing" is mirrored by what seems to be an almost total neglect of any effort to design a rational architecture for the set of scripts that make up the  toolkit.

On the other hand, muddled code is pretty common in fast-growing projects where time is of the essence and deadlines tight.  The ACS isn't the only software project to suffer from such constraints.

As far as whether or not an object-oriented approach to separation of queries, programs, and HTML makes sense, I've not really thought about  it.  I do believe the object-oriented paradigm would be useful for designing a reasonable model for module add-ins, and a natural way to think about providing easy-to-configure ways to define permissions, etc, for various modules and parts thereof.

As far as the templating problem goes, the problem lies in mapping the object-oriented paradigm to the hyperlinked, page-oriented reality of the web.  I've not looked at Zope but it's not hard to imagine that such a scheme could get complicated in a hurry.