Metalua

Copyright (c) 2006-2997 Fabien Fleutot <metalua@gmail.com>

Metalua is available under the MIT licence.

Significant parts of the compiler borrow code from other projects,
all released under the MIT license:
- Lua                           <http://www.lua.org>
- Kein-Hong Man's     Yueliang  <http://luaforge.net/projects/yueliang>
- Tomás Guisasola's   Lua Rings <http://www.keplerproject.org/rings>
- Ben Sunshine-Hill's Pluto     <http://freshmeat.net/projects/pluto>
- Thomas Reuben's     Bitlib    <http://luaforge.net/projects/bitlib>

MIT License
===========

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
