cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Grzegorz Kossakowski <g...@tuffmail.com>
Subject Re: Where is Cocoon 3 going to?
Date Wed, 26 Nov 2008 22:30:51 GMT
Torsten Curdt pisze:
>> Honestly I have no opinion on an implementation of the sitemap engine in a
>> functional language.
>> Perhaps it's just me, but I fail to see the reason to do so.
> 
> I didn't bother to search the archives ... and this might also been
> beer talk during GetTogethers where this came up before ...but IMO the
> point is not use necessarily a "functional language" but a language
> that is more suited for the job.

You probably have in mind thread started by Ugo Cei "[RT] A Groovy Kind of Sitemap"[1]. I'm
still in
process of reading all replies.

Yep, the real point is to use something better than our current sitemap language. I have chosen
functional language (namely Scala) because it's my current field of interest and because I
can see
benefits coming from using it.

To point out just a few:
1. More concise and natural syntax. What about pipeline looking like:

  FileGenerator("a/template.xml") | XSLTTransformer("b/sth.xslt") | MyTransformer | HTMLSerializer

  This is a plain Scala with a few things defined correctly. Scala has a nice support for
creation
of DLSs, see[2]

2. Ad-hoc defintions of simple transformers.

3. Debugging support for sitemap.

4. Strong typing for sitemap.

> Using XML for the sitemap IMO turned out to be a very bad idea in
> retrospect. (Well, everything is XML - right) On the other hand
> writing a sitemap in a common language (javascript or something
> similar) will lead to terrible abuses (as you would only need a subset
> of whatever you pick). Coming up with your own DSL has become so
> simple that this would be my choice now these days.

Actually I don't believe that we can stop people making stupid things simply by designing
a good
software. Definitively we should encourage people to use our software the proper way but working
hard on obstacles is more questionable.

Anyway, DSL-like syntax is possible in  Scala.

> I have already seen so many people adopt the sitemap concept in other
> projects. (I wish httpd would adopt it!) But everyone came up with
> their own implementation. "I just need a little sitemap engine". Let's
> face it the component re-use in that aspect is a bit of a myth. (Poll:
> how many people re-use cocoon components in other projects as is?)
> 
> Maybe it's time to learn from the Cocoon strengths and turn parts of
> it into APIs. The pipeline API is a good example. I guess this is the
> only way to revive Cocoon's future.

+1 for that.

I guess we all agree that we want to create something more than just a pipeline API and its
implementation, right?

Anyway, it's good that this work has started. Rewriting from scratch but based on our expierience
brings some new opportunities.

[1] http://thread.gmane.org/gmane.text.xml.cocoon.devel/39351
[2] http://www.scala-lang.org/node/104 (Scala is extensible section)

-- 
Best regards,
Grzegorz Kossakowski

Mime
View raw message