7 ms·
Rails like framework for C++ with great speed
- r1chelt 14y agolink dead
- xmpir 14y agothe link seems down to me...
- mcguire 14y agoGoogle's cached copy: http://webcache.googleusercontent.com/search?q=cache:evgtf1adSyEJ:www.treefrogframework.org/&gl=us&prmd=imvns&strip=1 http://webcache.googleusercontent.com/search?q=cache:evgtf1a...
- aw3c2 14y agoWebsite is dead. I hope it is not a web framework. edit: It is but the site is Wordpress.
- kintamanimatt 14y agoWhy wouldn't they eat their own dog food and build their site on their own framework? It reflects really badly in so many ways.
- dllthomas 14y agoOn the one hand, it's certainly reasonable to have a site up for the project before the code's ready. On the other, I certainly hope they're building something meaningful with it, before they call it stable.
- kintamanimatt 14y agov1.0 (stable) was released July 16, 2012!
- dllthomas 14y agoThen I hope they've done something meaningful with it. It doesn't necessarily have to be reimplementing their working (although apparently it isn't...) site, is what I was trying to convey.
- kintamanimatt 14y agoI actually wonder what the market is like for a C++ web framework. In principle I like the idea of a framework built using a compiled language, but I imagine it'd be far easier to write a vulnerable application.
- nakkiel 14y agoOkCupid use their own event-driven C++ web server framework for their website. I don't remember to what extent but it at least powers specific features such as Chat ans Search; I can't guarantee they use it for the pages of the website but I'd say they do (there are a couple of presentation but I read them long ago). > http://okws.org/ http://okws.org/
- Sidnicious 14y agoWe do use okws for the whole website. It's more work to use than a framework like, say, Rails but it's well-designed and has some great features. For instance, it includes a templating language called Pub. A typical request hits a handler in C++-land which collects the data the page'll need into a top-level Pub object. Then it invokes a Pub template which renders the page. All of this enforces separation between your back-end logic and the design of a page. It would be awesome to see more frameworks with fresh ideas in this area, though.
- dllthomas 14y ago> I like the idea of a framework built using a compiled language[.] Check out yesod (www.yesodweb.com). > I imagine it'd be far easier to write a vulnerable application. In C++, probably, yes. In Haskell, not so much.
- tszming 14y agoI can't see it is really a big deal, just pick the best tool for the job, e.g. weblogs.java.net use Drupal.
- carsongross 14y agoI have misgivings about ruby, but for the majority of the sites I work on CPU-burn isn't the issue. The second I touch a network resource (typically the database) all the hand-crafted assembler in the world ain't gonna save me. A stronger argument for a rails rip off in a statically typed language would be tool support, esp. consistent code completion.
- yummyfajitas 14y agoI don't know why you are being downmodded. You are precisely on point - in Python (a slow language, similar to ruby), I'd often spend 50-500ms in the db (or 10-100ms in memcached) and 1-10ms in code. Optimize your sql, then optimize your memcached. That said, I've recently been working on a project building a webapp in Scala. The type safety Scala gives is amazing. Want to write to master then read from a slave in the same http request [1]? Won't compile. Want to build a page without a tracking beacon? Won't compile. Want to prevent invalid input to enum fields (e.g., a string for which the only valid choices are "moderator", "subscriber" and "contributor")? Compiler has you covered. [1] If you write to master then read from a slave, there is a nontrivial chance that the result of your write won't be mirrored to the slave.
- SkyMarshal 14y agoAre you using a particular Scala framework, or building your site from scratch?
- yummyfajitas 14y agoPlay, with large components ripped out and rewritten. In particular, the monadic db access system is something we wrote in house.
- rabbitfang 14y agoI've been very impressed by Scala. Play is also very productive. IntelliJ has an excellent (free) Scala plugin and I've read that support for Play is coming in the next version: http://blog.jetbrains.com/scala/2012/07/20/play-2-0-support/ http://blog.jetbrains.com/scala/2012/07/20/play-2-0-support/
- mtkd 14y agoMy first reaction to seeing Rails BITD was to think 'wow this would be so fast done in C++'. Then about 2 years later, when I began to really understand Ruby and some of the community had shamed the C++isms out of me, it became clear why it was impossible. Ruby interpretation and introspection makes so much possible in an elegant way - you can bruteforce Rails out of another language but you'll lose a lot of what makes Rails so powerful in the process. For backoffice webapp use I believe nothing can compete with Rails currently - it's stable, well documented and has awesome library support. However, highload client performance does not come out of the box, which is part of the reason for the drift to Node or lighter Ruby frameworks. I don't think you need to make Rails faster, you just need to use it for what it does best (complex backoffice apps and APIs) and use something lighter for the high performance requirements.
- ksec 14y agoTrue, I am hoping Ruby 2.0, and Rails 4.0 will improvement on those front.
- spartango 14y agoI'd agree with this, and append the suggestion that if particular parts of your application have high performance demands, those should actually be decoupled from the main app into API'd services. This tends to make the entire application more elegant while using the appropriate technology for each task.
- Nicole060 14y agoI think wt is much better suited than a rails clone for the few kind of webapps you'd write in C++. http://www.webtoolkit.eu/wt/ http://www.webtoolkit.eu/wt/ You can think of using it as a multiplatform GUI for a native app, that runs locally but uses the web browser instead of something like Qt or WxWidgets. Or you can use it for a webapp that pegs the CPU more than a database. There's also a port to the JVM and ruby bindings.
- thirsteh 14y agoApparently not great stability :)
- arunagarwal 14y agoLink is dead!
- darkstalker 14y agoWhat about Wt? http://www.webtoolkit.eu/wt http://www.webtoolkit.eu/wt
- trung_pham 14y agoIt would be cool if someone make a rails like framework for GoLang. :)
- aaronblohowiak 14y agoGoweb, Gongo, falcore, go-fastweb, go-start, mango, web, web.go, wfdr, Tideland, Twister http://godashboard.appspot.com/project http://godashboard.appspot.com/project
- aaronblohowiak 14y agoWhoops, i forgot to mention http://code.google.com/p/gorilla/ http://code.google.com/p/gorilla/
- trung_pham 14y agoUnlike Ruby, I'm stilling waiting for the one framework to stand out and dominate others, like Rails. As of now, there are too many little web frameworks in Go. Most of them are inactive. People still have a hard time selecting which one to use for their project and not regret their decision in the future. Ruby has Rails, Python has Django, what does Go have? Just name one, not a list.
- dasil003 14y agoI really don't understand the Rails clone thing. When Rails did was take a lot of best practices from all over the web and wrap it up in Ruby using the best features of that language to maximum effect. It seems to me if you want a good C++ web framework, you need to start from first principles instead of trying to clone something designed from the ground up in such a different language.
- ricardobeat 14y agoWas expecting a much larger gap in performance from standard frameworks, it's not that faster after all. And how can PHP with it's per-request lifecycle be faster? Cache for the performance comparison: http://webcache.googleusercontent.com/search?q=cache:wSdyzM49_DYJ:www.treefrogframework.org/documents/comparison-of-performance&hl=en&prmd=imvns&strip=1 http://webcache.googleusercontent.com/search?q=cache:wSdyzM4...
- dsrguru 14y agoI find it ironic that the site isn't loading now.
- nicholassmith 14y agoThis is interesting, I'm a c++ developer by day and like Rails on the weekend so it tickles my main interests. Building a large app that needs performance? I could see a C++ web framework being useful, but basing it around Rails is a weird choice. Rails is great for what Rails is great at, try a whole new bag that works with the language benefits and the expected use cases.
- neya 14y agoIt would be interesting to see how this framework's performance would compare to something like the Play framework (Play for Scala 2.0)..I mean, do you think a C++ framework like this one would be able to scale and/or handle much better traffic/load than a framework like Play?? (Play for Scala 2.0 in particular)...Anyone?