Jim Fulton wrote:



Comments and volunteers welcome.

After thinking about it for a little bit, -1.

Firstly, I'm interested in experimenting with alternative syntaxes for ZCML. I'm however not convinced that the proposal is a productive approach to do this.

The proposal talks concretely about ZConfig as an alternative syntax and strongly implies it's better than ZCML for the job. I'm not convinced ZConfig is the ideal alternative syntax for ZCML. For one, ZConfig is a syntax not very well known, even granting its similarity to the Apache configuration language, while XML is very well known. I'd like to explore some other formats first.

You can answer that the proposal adds genericity so that you can hook in your own engine anyway, and thus is useful for my wish of experimentation, and that you're not stuck with ZConfig. There are various problems with such an answer:

* Lesson from Gnome: adding more options doesn't make a user interface (including our APIs and configuration languages) easier to use; the reverse happens. It shouldn't be used as a way to avoid debates about what the right one way should be. Concretely, genericity won't bring us much: ZConfig might be considered by the community as the 'new way', or people will stick with ZCML -- people won't generally invent new syntaxes when they write a new Zope 3 application.

* I don't think the few people that are interested in such syntax experimentation need implementation support for this in Zope 3, at present. Writing code that generates ZCML is easy enough -- XML generation is well-understood.

I'm not convinced ZCML is intimidating primarily due to its syntax. I think the XML syntax is only a minimal issue compared to the other things that make it intimidating, namely that ZCML exposes the component architecture.

I think there's lower-hanging fruit to invest energy in simplifying ZCML *semantically* as it is now first, before we work on alternative syntaxes or consolidating engines.

Finally, ZCML works. We've spent energy in educating the Zope community (3 and 2) in its use. People have learned it. We have working code. Why throw away that effort and introduce something new? Is ZCML really that horrible? Do we really think people will come in droves to Zope 3 after we change it to ZConfig? The *syntax* of ZCML is a very minimal issue compared to everything else when learning Zope 3. I think we have much more to gain in improving the semantics of ZCML first, then come back and reconsider syntax.


Zope3-dev mailing list
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com

Reply via email to