Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> What pain-points of Leiningen and Compojure does this framework aim to solve?

There are no problems with Leiningen solved. It's based on it like other Clojure libs with project templates etc.

With Compojure it's another story, it only gives you a handler function. Pedestal makes a routing table available, enabling reverse routing. The route definition is data based. It's less repetitive to define routes.

> I'm sure its an excellent framework, but there way too much for me to consider using it right now. My concerns: How difficult would it be to switch out Datomic for PostgreSQL?

Not difficult at all? Have you looked at the datomic tutorial? It does nothing besides setting up a connection and querying the database. What dbs do not support that?

>What if I don't want ClojureScript at this moment? What happens if I want to switch X with Z or drop ABC? How hard will it be to minimize and erase all the things I don't want?

Well, you go through and pick the libraries you want to use?

> Why are there so many extra words needed for the routing templates?

It's a comprehensive description of all aspects of the flexible routing dsv, including the programatic inteface to define routes at runtime.

> I've always felt Clojure would get a boost from a Rails-like framework, but I'm concerned that a large, opinionated framework will break the very promise of Clojure: flexibility and easy DSL creation. Once we are faced with something that needs to be reverse-engineered or broken, then this promise is ruined.

It's not rails. We've all seen where that got.

> I'm all for new frameworks and ideas, but its a little funny to think that Noir was dropped, in part, for being too large and complicated.

It's a set of libraries, not a framework.

Also, it doesn't add state for everything everywhere. Instead it takes the current concept of Clojure web apps and takes it to the next level.

In Compojure you define lots of routes, mostly calling separate handling functions, only passing out the routes parameters. That what pedestals routing does by default. That's just one example of many.



Thanks for the answers. I think they are really good.


A little snarky at times, probably. Let me know if you're interested in anything else or in more detail.

I'm just digging into pedestal myself.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: