Jump to content

Merb

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Jm3 (talk | contribs) at 01:15, 2 April 2015 (populate cite template). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Merb: No code is faster than no code[1][2]
Original author(s)Ezra Zygmuntowicz
Developer(s)Ezra Zygmuntowicz & Yehuda Katz
Final release
1.1.2[3] / June 17, 2010 (2010-06-17)
Repository
Written inRuby
Operating systemCross-platform
TypeWeb application framework
LicenseMIT License
Websitehttp://www.merbivore.com

Merb, short for "Mongrel+Erb",[4] was a model–view–controller web framework written in Ruby. Merb was merged into Rails web framework on December 23, 2008[5] as part of the Ruby on Rails 3.0 release.[6]

Relation to Ruby On Rails

Merb 1.0 was released on November 7, 2008 at RubyConf.[7] and is currently at version 1.1.

The Merb project was started as a "clean-room" implementation[8] of the Ruby on Rails controller stack, but has grown to incorporate a number of ideas which deviated from Rails's spirit and methodology at the time, most notably, component modularity, extensible API design, and vertical scalability. Most of these capabilities have since been incorporated back into Rails during the Rails/Merb merger announced on December 23, 2008.[9][10]

Like Rails, Merb can also be used to write sophisticated applications and RESTful Web services. It has been suggested that Merb is more flexible and faster than Rails.[5]

Differences from Ruby On Rails

Most of the key features and purported benefits of Merb were integrated into Ruby on Rails during the course of development of Rails3. There will be no version 2 of Merb, with Rails 3 serving as the successor to both Rails 2 and Merb. However, historically, Merb's design was built with the intent of addressing a number of key criticisms of Ruby on Rails. This led Merb's developers to stress two key design principles: modularity, and an extensible API.

Modularity

Merb proper encompasses only the controller layer in the Model, View, Controller architecture. However, Merb serves as the integration point for a larger suite of technologies which operate in concert as an entire web application framework. The primary points of integration with Merb are the web server interface, the MVC model layer, the MVC view layer, and finally controller extensions and addons. Merb's default application stack incorporates Datamapper at the Model layer, ERB at the view layer, and Rack and Mongrel at the web server layer.[11][12]

References

  1. ^ {{cite web | url=https://twitter.com/ezmobius/status/154477982193418240 | first=Ezra last=Zygmuntowicz
  2. ^ https://twitter.com/ezmobius/status/61523924546093056
  3. ^ https://github.com/merb/merb/wiki
  4. ^ Zygmuntowicz, Ezra (18 Oct 2006). "ANN: Merb, Mongrel+Erb". osdir.com. {{cite web}}: External link in |work= (help)
  5. ^ a b Boone, Paul (18 Sep 2008). "Rails/Merb performance comparison (on mongrel, jruby, tomcat, glassfish)". mindbucket.com. {{cite web}}: External link in |work= (help)
  6. ^ Ruby on Rails 3.0 Release Notes
  7. ^ Aimonetti, Matt (9 Nov 2008). "Merb 1.0 released". Merbist.
  8. ^ Zygmuntowicz, Ezra (23 Dec 2008). "Merb *is* Rails".
  9. ^ Hansson, David Heinemeier (23 Dec 2008). "Merb gets merged into Rails 3!". weblog.rubyonrails.org. {{cite web}}: External link in |work= (help)
  10. ^ Katz, Yehuda (23 Dec 2008). "Rails and Merb Merge". yehudakatz.com. {{cite web}}: External link in |work= (help)
  11. ^ "merb-core gem dependencies". 23 Mar 2010.
  12. ^ "merb gem dependencies". 23 Mar 2010.

Template:Z148