Okay, if you have to work with something rpe-existing that makes more sense. My main point is that if I were started from scratch, I'd do it different.
On Mar 16, 8:12 pm, Berlin Brown <berlin.br...@gmail.com> wrote: > On Mar 16, 7:52 pm, Jeffrey Straszheim <straszheimjeff...@gmail.com> > wrote: > > > I'd love to see something built around very-high scalability, using NIO and > > thread pools and such. > > > On Mon, Mar 16, 2009 at 7:40 PM, Sean <francoisdev...@gmail.com> wrote: > > > > 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 > > "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." > > Assuming a person is able to re-engineer what Spring has already done > including the simplistic dependency injection oriented web framework. > For me, I just to hate to ignore all that work has been done as well > as making it easier for integrating 'this' framework with pre-existing > code. > > "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. " > > That sql library does come close to hibernate. Hibernate works with > 20 or more different, supports different caching mechanisms, works > with pojos, on and on. Once again, Spring and Hibernate are the two > libraries I would use > > I was looking at it more from the engineering and integration > standpoint as opposed to just "write it all in clojure because of the > functional programming goodness". If you integrate Spring and > Hibernate, there is functionality and maturity that won't exist with > anything I could create in the time I want to work on his whether you > add most of Clojure's great features or not. > > I think that is where people might want to use compojure. --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---