Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > e3d62627d1d1aab7ab1be2dd7f65a872 > files > 324

ecl-10.4.1-1.fc14.x86_64.rpm

<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>3.&#160;History</title><link rel="stylesheet" href="ecl.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.75.2"><link rel="home" href="index.html" title="The ECL manual"><link rel="up" href="pr01.html" title="Preface"><link rel="prev" href="pr01s02.html" title="2.&#160;What is ECL?"><link rel="next" href="pr01s04.html" title="4.&#160;Copyright of ECL"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.&#160;History</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="pr01s02.html">Prev</a>&#160;</td><th width="60%" align="center">Preface</th><td width="20%" align="right">&#160;<a accesskey="n" href="pr01s04.html">Next</a></td></tr></table><hr></div><div class="section" title="3.&#160;History"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="preface.history"></a>3.&#160;History</h2></div></div></div><div class="figure-float" style="float: left;"><div class="figure"><a name="fig.family-tree"></a><p class="title"><b>Figure&#160;1.&#160;ECL's family tree</b></p><div class="figure-contents"><div class="mediaobject" align="center"><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0" width="300"><tr><td align="center"><img src="figures/hierarchy.png" align="middle" width="300" alt="ECL's family tree"></td></tr></table></div></div></div><br class="figure-break"></div><p>

  The <span class="application">ECL</span> project is an implementation of the Common-Lisp language inherits
  from many other previous projects, as shown in <a class="xref" href="pr01s03.html#fig.family-tree" title="Figure&#160;1.&#160;ECL's family tree">Figure&#160;1</a>. The oldest ancestor is the Kyoto Common Lisp, an
  implementation developed at the the Research Institute for Mathematical
  Sciences, Kyoto University <a class="xref" href="bi01.html#bib.KCL">KCL</a>. This
  implementation was developed partially in C and partially in Common Lisp
  itself and featured a lisp to C translator.</p><p>The <acronym class="acronym">KCL</acronym> implementation remained a propietary project
  for some time. During this time, William F. Schelter improved
  <acronym class="acronym">KCL</acronym> in several areas and developed Austin Kyoto
  Common-Lisp (<acronym class="acronym">AKCL</acronym>). However, those changes had to be
  distributed as patches over the propietary <acronym class="acronym">KCL</acronym>
  implementation and it was not until much later that both
  <acronym class="acronym">KCL</acronym> and <acronym class="acronym">AKCL</acronym> became freely available
  and gave rise to the GNU Common Lisp project, <acronym class="acronym">GCL</acronym>.</p><p>Around the 90's, Giusseppe Attardi worked on the <acronym class="acronym">KCL</acronym>
  and <acronym class="acronym">AKCL</acronym> code basis to produce an implementation of
  Common Lisp that could be embedded in other C programs <a class="xref" href="bi01.html#bib.ECL">ECL</a>. The result was an implementation sometimes known as
  <acronym class="acronym">ECL</acronym> and sometimes as <acronym class="acronym">ECoLisp</acronym>, which
  achieved rather good compliance to the informal specification of the language
  in <a class="xref" href="bi01.html#bib.CLTL2">CLTL2</a>, and which run on a rather big number of platforms.</p><p>The <span class="application">ECL</span> project stagnated a little bit in the coming years. In
  particular, certain dependencies such as object binary formats, word sizes
  and some C quirks made it difficult to port it to new platforms. Furthermore,
  <span class="application">ECL</span> was not compliant with the <acronym class="acronym">ANSI</acronym> specification, a
  goal that other Common Lisps were struggling to achieve.</p><p>This is where the <acronym class="acronym">ECLS</acronym> or
  <acronym class="acronym">ECL</acronym>-Spain project began. Juanjo Garc&#237;a-Ripoll took
  the ECoLisp sources and worked on them, with some immediate goals in mind:
  increase portability, make the code 64-bit clean, make it able to build
  itself from scratch, without other implementation of Common Lisp and restore
  the ability to link <span class="application">ECL</span> with other C programs.</p><p>Those goals were rather quickly achieved. <span class="application">ECL</span> became ported to a
  number of platforms and with the years also compatibility with the
  <acronym class="acronym">ANSI</acronym> specification became a more important goal. At some
  point the fork <acronym class="acronym">ECLS</acronym>, with agreement of Prof. Attardi, took
  over the original <acronym class="acronym">ECL</acronym> implementation and it became what it
  is nowadays, a community project.</p><p>The <span class="application">ECL</span> project owes a lot to different people who have contributed
  in many different aspects, from pointing out bugs and incompatibilities of
  <span class="application">ECL</span> with other programs and specifications, to actually solving these bugs
  and porting <span class="application">ECL</span> to new platforms.</p><p>Currently, development of <span class="application">ECL</span> is still driven by Juanjo
  Garc&#237;a-Ripoll with the help of Michael Goffioul in the Windows
  port. The project homepage is located at <a class="ulink" href="http://ecls.sourceforge.net" target="_top"><code class="uri">http://ecls.sourceforge.net</code></a>,
  and there is a mailing list where questions, bug reports and other
  discussions may be carried out.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="pr01s02.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="pr01.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="pr01s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.&#160;What is <span class="application">ECL</span>?&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;4.&#160;Copyright of ECL</td></tr></table></div></body></html>