From: Heinz Knutzen
Subject: Release 0.6.4 of CLiCC - Common Lisp to C Compiler is available
Date: 
Message-ID: <2ue42fINNm4@karlo.informatik.uni-kiel.de>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The new release 0.6.4 of CLiCC, 
a Common Lisp to C Compiler, 
is now available.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


The major changes from the last release (0.6.2) (January 1994) are:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- Inlining of functions across modules.

- &rest arguments are stack allocated if the list is only locally used.

- Better code for nested IF-expressions.

- Foreign function interface is usable now. Look at src/test/time.*
  for an example. Documentation is not yet finished.

- Most of the code for array functions is written in Lisp now.

- Print-Functions of defstruct are no longer ignored.

- Function FORMAT knows about ~T directive now.

- Functions  SCALE-FLOAT, FLOAT-RADIX, FLOAT-SIGN,
  FLOAT-PRECISION and INTEGER-DECODE-FLOAT are implemented now.
  The radix and significand-length are taken from float.h if an ANSI-C
  compiler is used. These values are calculated by CLiCC otherwise.

- *print-length* and *print-level* have been set to 50 because
  *print-circle* is not implemented yet.

- New scripts cl-s and rt-s to produce shared libraries (SUNOS only).

- Function BREAK may be used during macro expansion to debug expander
  functions.

- More descriptive error message if macro expansion fails.

- More usable messages if type errors are found.

- Many bug fixes.

KNOWN BUGS
~~~~~~~~~~

- next-method-list may be wrong in case of multiple inheritance
- Compilation fails for functions which use local function
  definitions in default forms for optional or keyword parameters.
- User defined methods for standard generic functions like
  shared-initialize are silently ignored.
- Compilation fails if :documentation option in slots is used.
- Foreign function interface is not usable if CLiCC is compiled with
  itself, because FORMAT directive ~^ is used but currently not
  available in our imlementation of FORMAT.


TODO
~~~~

- Foreign function interface has to be finished and documented.

- Module compilation has to be documented

What is CLiCC
~~~~~~~~~~~~~

 CLiCC is a Common Lisp to C Compiler.  It generates C-executables 
 from Common Lisp application programs. CLiCC is not a Common Lisp 
 system.  Hence it does  not  include any  program  development or 
 debugging support.  CLiCC is intended to  be used as an add-on to 
 existing Common Lisp systems for generating portable applications.
 
 CLiCC supports a subset of Common Lisp + CLOS, which we call CL_0
 (CommonLisp_0).  CL_0  is a strict and very large  subset of full
 Common Lisp + CLOS, without  (EVAL ...) and friends.  At present,
 CL_0 is based on CLtL1,  but  we  are  working towards  CLtL2 and
 ANSI-CL.
 
 The target language is a subset of C. CLiCC is adaptable to gene-
 rate ANSI-C or K&R-C by using a compiler option.  The generated C 
 code is compilable using  a conventional C compiler on the target 
 machine,  and must be  linked with the  CLiCC runtime library  in
 order to generate executables. 

Requirements
~~~~~~~~~~~~

 The following is a list of Common Lisp systems we tested to be usable
 for CLiCC to run: 
 
   - Allegro Common Lisp 4.1 (Franz Inc.)
   - Sun (Lucid) Common Lisp 4.0 (Sun Microsystems Inc., Lucid Inc.)
   - CMU Common Lisp 16f or 17c (Carnegie Mellon University)
   - CLISP (Bruno Haible & Michael Stoll)
   - AKCL 1.615 (Austin Kyoto Common Lisp) with September-16-92-PCL-f

 But CLiCC should run on every system which implements Common Lisp as
 described in CLtL1 with additional CLOS support.

 You need an ANSI-C or K&R-C compiler to generate the executables. On
 PC compatible machines you have to use a 32-bit C compiler.
 
How to get it
~~~~~~~~~~~~~

 CLiCC is available via anonymous FTP from
 
 ftp.informatik.uni-kiel.de  (134.245.15.114) 
 file: kiel/apply/clicc-0.6.4.tar.gz
       kiel/apply/clicc-0.6.4.tar.Z
 
How to contact us
~~~~~~~~~~~~~~~~~

 Requests or comments regarding CLiCC should be send to:
              ·····@informatik.uni-kiel.de

 Use one of the following addresses to contact us individually:
      Wolfgang Goerigk, ··@informatik.uni-kiel.de
      Ulrich Hoffmann, ···@informatik.uni-kiel.de
      Heinz Knutzen, ··@informatik.uni-kiel.de
 
      Christian-Albrechts-Universitaet zu Kiel, 
 Institut fuer Informatik und Praktische Mathematik
                 Preusserstr. 1-9
              D-24105 Kiel, Germany

-- 
Heinz Knutzen                     email: ··@informatik.uni-kiel.de
Institut fuer Informatik, Universitaet Kiel        Tel: +49-431-560426
Preusserstr. 1-9, D-24105 Kiel, Germany            Fax: +49-431-566143
 
From: ·············@cs.cmu.edu
Subject: Re: Release 0.6.4 of CLiCC - Common Lisp to C Compiler is available
Date: 
Message-ID: <Qi2mTBm00juDJjOaJm@cs.cmu.edu>
Can anybody give their experiences with CLiCC. Systems like IBUKI
who translate CL into C are reputed to be inherently slow then
compiled systems. 
Comments on compability, size of resulting C binaries & speed are very
welcome.

thanks
ritesh