Cascade templates are an embedded DSL directly in the Clojure code; this takes some getting used to but ensures that you can take maximum advantage of Clojure when creating your application. Templates are converted to functions.
Cascade converts templates to function, but the output of functions is not markup text; instead, Cascade uses an internal DOM structure as an intermediate format prior to streaming markup. This has some significant advantages,
in that the final output can be manipulated between the rendering stage and the streaming stage.
See the Cascade Wiki for more information.
So where’s the progress? Sorry folks, I’ve been busy with several large Tapestry projects, plus Tapestry 5.3, plus Project Jacob (my now 19 month old son) to make any progress on Cascade. I still have high hopes for Cascade, but I’m in the chicken-and-the-egg problem of finding a client that can directly or indirectly support its development.
Cascade started as a full web framework, but has evolved into a view technology that plugs into existing frameworks (Ring and Compojure).
Cascade is a itty-bitty side project of Howard M. Lewis Ship, who should be spending more time on Tapestry.
Care to contribute? Drop me a line!
Cascade is released under the terms of the Apache Software License 2.0.