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
-~----------~----~----~----~------~----~------~--~---

Reply via email to