I'm not sure if some of the design inputs make sense, specifically Spring and Hibernate.
Point 1 - I've found the strength of Spring to be making up for the weaknesses of Java. Once you have first class functions, macros, and multi-methods (to name a few), Spring doesn't bring much to the table any more. Add in a few Unix utilities like cron and others, you remove the rest of the features. Point 2 - As for Hibernate, ORM doesn't make much sense with a functional language either. The SQL library in clojure-contrib lets you load a map, and you can create way more interesting queries with clojure than hibernate. S-expressions are that powerful. Point 3 - I'd follow Rails example and use strong defaults, and resort to XML only when necessary. Point 4 - Sounds good. Point 5 - Have you looked into compojure? It does a really good job of turning s-expressions into HTML. Point 5 (the second one) - See compojure again. Point 6 & 7 - This is where a lot of work is to be done. I'm not sure how to respond right now. I'll think about it. Point 8 - This is why clojure is awesome. I'll leave this as an exercise to the user :) Point 9 - Yeah, this would be a great feature. That's my thoughts. On Mar 16, 7:17 pm, BerlinBrown <berlin.br...@gmail.com> wrote: > After many years (decade) of web development, here are the things that > I want in a framework, mostly based in clojure: > > What do you think and what you add. This is ambitious and just a > "ideas" of what I would add. What would you want from your ideal > framework? > > 1. Based on Spring Framework for middleware: > Reason: there are years and years and years of development spent on > spring and there are many things done right. If I were integrating > with any other third party libraries, I would use spring. Spring is > added to my framework. > > 2. Based on Hibernate for ORM mapping: > Reason: the defacto standard for ORM mapping with Java. And also used > by NHibernate. There is a lot of support for most popular databases. > > 3. Clojure/Lisp based configuration AND default XML configurations. > This has become the standard way to configure a J2EE web application > including spring and hibernate. But I would like a lisp oriented > configuration. > > 4. Easy mapping to URLs. I like python's approach for URL mapping > > 5. Clojure based, framework based server pages AND JSPs. I have > always hated some aspects of JSP and ASPs, etc, etc. They are just > too complicated. I would want to use Clojure code within the > framework oriented server page and other predefined tags. > > 5. Lift like reusable server pages. Lift has an interesting approach > for resuing the same page. E.g. you have an if-else statement within > the page. > > If request == GET > ...render this > if request == POST > ...render this. > if URL == 'abc.html' > .. render this. > > I want to embed this in my framework. You only touch one page, but > you get different outputs depending on the request method or URL, etc, > etc. > > 6. Use of Clojure syntactic sugar -- TO BE DETERMINED. There is the > ability to use powerful Clojure constructs with this framework but I > haven't figured out how yet. > > 7. Better integration of CSS, Javascript, HTML. A lot of a web > application still resides with the client side. I have yet to see an > web framework that addresses client development (besides GWT). Maybe > something as simple as server page tags for CSS? Javascript? > > 8. Additional third party libraries: > > Lucene, iText, jFreeChart, optional Terracotta integration > ---------------- > > Other optional/additional thoughts. > > 9. Clear separation between back-end and front-end layers --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---