User:Andy Dingley/My created pages/LYME (web development stack)

The acronym LYME is a solution stack of free and open source software, used to run dynamic web sites. The expansion is as follows:
 * Linux, referring to the operating system;
 * Yaws, the web server;
 * Mnesia, the database management system;
 * Erlang, the programming language.

Both Mnesia and Yaws were written in Erlang, so web applications developed for LYME may be run entirely in one Erlang virtual machine. This is in contrast to LAMP where the web server (Apache) and the application (written in PHP, Perl or Python) might be in the same process, but the database is always a separate process. As a result of using Erlang, LYME applications perform well under high load and if distribution and fault tolerance is needed.

The query and data manipulation language of Mnesia is also Erlang (rather than SQL), therefore a web-application for LYME is developed using only a single programming language.

Interest in LYME as a stack had begun by August 2005, as was soon cited as a high-performance web application platform that used a single development langauge throughout. Favourable comparisons to other popular stacks such as Ruby on Rails were soon forthcoming. Comparisons to LAMP have also been favourable, although some have highlighted the difficulties of porting "SQL thinking" to the very different context of Mnesia.

One of the "flagship" users of LYME is the Swedish internet payment-processing company, Kreditor, who have built their whole architecture on LYME. This is seen as a successful project that demonstrates virtues of both LYME and functional programming in general. LYME was also covered in the Erlang session at the Software Practice Advancement (SPA) 2008

Interestingly, LYME, Yaws, and Mnesia wear the names of diseases (Mnesia was originally named Amnesia).