[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

fugue # 2



                        FUGUE Notes

               An occasional publication of the
    Franz Lisp User Group under Unix and Eunice (FUGUE)

                  Number 2 (October, 1982)
                edited by Richard J. Fateman
                  University of California
                     Berkeley CA 94720
                            USA
                      fateman@berkeley

1.  Welcome!

     It seems  about time to publish  the  second  of  these
newsletters,  since  we  have  accumulated  a  number of new
items.  We would also like to relay to others such  informa-
tion as has been forwarded to us. The reports of projects at
Berkeley (and elsewhere) may strike sympathetic chords  with
other research.

2.  New programs

2.1.  OPS-5

     OPS-5 is a "production system" written by Charles Forgy
of  CMU.   It  appears to work just fine in Franz, and is in
wide use.  Interested persons may obtain copies of  documen-
tation and the program from Charles.Forgy@CMU-10A. ( Charles
Forgy, Computer Science Department, Carnegie-Mellon  Univer-
sity, Pittsburgh, PA  15213)

It is their policy to send it to anyone who wants it free of
charge.

2.2.  GLISP

     GLISP is a system which provides interesting linguistic
features for generic operations and data abstraction.  Writ-
ten by Gordon Novak at Stanford University,  it  was  origi-
nally  developed for Interlisp, but has been ported to other
lisps, including Franz.

2.3.  Flavors

     There are now two distinct implementations,  apparently
with  identical  functionally,  of "flavors" as appearing in
the MIT Lisp Machine software.  One is described in TR-1174,
____________________
9   UNIX, Eunice, Franz Lisp, may be trademarks of Bell Labs,
SRI Int'l, and Univ. of Calif.



9










"Franz Flavors" by Richard J. Wood (Dept of C.S.,  Univ.  of
Maryland,  College  Pk, MD 20742).  The other was written by
Juan R. Loaiza of MIT, Laboratory for Computer Science.   We
have  a  copy  of  the  latter  on-line  here, and expect to
receive a copy of the Maryland one,  shortly.   Eric  Cooper
here at Berkeley is in charge of the flavors situation.

     There is an implementation of closures, mostly compati-
ble  with  the Lisp Machine specification, announced by John
Foderaro for Opus 38.33. The incompatibility is a result  of
what  we  perceive to be a high performance penalty for eso-
terica.

2.4.  Database Interfaces

     Jim Larus at UCB has cooked up interfaces to  both  the
INGRES  relational  database  system,  and the simpler TROLL
database system.  These will be described in his forthcoming
MS report, along with the next item.

2.5.  Cursor-control and Menus

     Larus has provided an implementation of screen  manage-
ment which uses the UNIX "curses" package for primitive win-
dow  management.   A  menu-based  interface  has  also  been
developed as part of this.

2.6.  Vaxima and Algebraic Manipulation

     A new version of vaxima, the VAX version of the MACSYMA
algebraic  manipulation system, was released in July by UCB,
incorporating some bug fixes, improved programs, and a large
number  of  user-contributed subroutine libraries.  This was
made available to test-site licensees.   Unfortunately,  MIT
has  suspended  new  test-site  licensing since about April,
1982.  We hope that MIT will be liberalizing  its  distribu-
tion policy to non-commercial sites.

     See the note below about MACSYMA being sold.

     As a counterpoint to this, UC Berkeley has  received  a
substantial grant from the System Development Foundation for
work on Mathematical Representation and Manipulation,  which
should  result in some more advanced systems for application
of  computers  to  symbolic  mathematics.   Recruiting   for
researchers,  staff,  and  students  is  underway  now,  and
interested persons should contact Richard Fateman.

2.7.  VLSI Design Rule Checker

     Lyra, written in Lisp by Michael Arnold, is a retarget-
able,  hierarchical,  design rule checker for VLSI circuits.
Lyra features a rule  compiler  (also  written  in  Lisp  of













course!)  which translates symbolic design rule descriptions
to lisp code for checking the rules.  Lyra was used for  the
RISC  project.  It  is  currently  being used extensively at
Berkeley, and will be included in the  Fall-82  distribution
of  of the Berkeley CAD tools.  For more information contact
Michael Arnold or John Ousterhout at Berkeley.

2.8.  Generic Arithmetic

     As a proposed extension to  Franz  arithmetic,  Richard
Fateman,  Keith  Sklower  and Scott Morrison, have written a
simple-minded  generic  arithmetic  package  which  includes
modules which can be loaded to support exact rational arith-
metic, software-simulated IEEE  extended  arithmetic,  arbi-
trary  precision floating point, complex, interval, and mul-
tivariate polynomial. Combinations of some of these are sup-
ported,  although  the  package is as yet incomplete in some
areas.  The IEEE arithmetic  simulation  is  written  in  C.
These  packages  are  probably  not in good enough shape for
casual use by others.


3.  New features

     Various performance enhancements  and  bug  fixes  have
been  incorporated  in  versions of Franz (now on Opus 38.33
and the compiler, Liszt 8.14) These are mentioned  in  brief
here;  more  details  accompany  updates  of  the system and
manual included in the forthcoming Berkeley 4.2BSD UNIX dis-
tribution.

3.1.  Franz

     We added a switch to cause the evaluator to save  macro
expansions so they need only be expanded once.

     We added vector and vector-immediate data types.

     We rewrote showstack and backtrace so they  are  easier
to use.

     We made the lisp to  foreign  function  interface  more
secure.  The system now allows foreign function to call lisp
functions.

     We added closures and support  flavors,  features  from
the Lisp Machine.

3.2.  Liszt

     Liszt will check the  number  of  arguments  to  system
functions and user defined functions.
9

9










     Liszt supports local declarations.

     Liszt will  automatically  compile  lambda  expressions
headed by the function `function'.

     Liszt supports compiler-only macros and  will  autoload
macros if necessary.

4.  MC68000

     Keith Sklower and Kevin Layer have been working on  the
MC68000  version  of  Franz  under the UNIX operating system
(using a DUAL System 83). While the current configuration is
a  swapping  system, the Lisp should be able to use the full
address space of the CPU. We expect to have this system run-
ning  on the UNIX 4.2 BSD SUN software, too. The base system
on the DUAL, including  the  interpreter,  reader,  bignums,
fasl, works; the compiler is being perfected.


5.  Other Lisps

     We now have, in-house tried 4  (other)  VAX  UNIX  lisp
systems:  YLISP,  Interlisp,  PSL,  and VLISP.  We know that
Interlisp can run also on  VMS  using  the  Eunice  package.
Interested parties can contact David Dyer at USC-ISI.  There
is also a version of lisp which runs  on  VMS  only,  namely
NIL,  from  MIT, which appears to be undergoing limited dis-
tribution.  Two other lisps under development under UNIX are
Yale's  answer to NIL, namely "T", and Common Lisp, from CMU
and friends.

     Counting Franz, that makes  7 lisp systems for the  VAX
computer line. Not counting variants on 2 operating systems.
A Paen to standardization.

     Dick Gabriel states some  useful  principles  for  com-
parisons  in  the conference record of the 1982 ACM Lisp and
Functional Programming Conference, which was held in August.
We  understand  he  now has a collection of some 18 programs
which he is continuing to time on various systems.

6.  Work in Progress

6.1.  BITGRAPH SUN AED-512

     Greg Foster at UCB is working on  raster-graphics  sup-
port in Franz for the 800 by 1000 b/w raster displays of the
BBN Bitgraph and/or the SUN Workstation,  and  possibly  the
color  512 by 512 AED system.  We are probably going to han-
dle mice and Bitpad (stylus) input for pointing.  There  are
lots  of  projects  we hear about with similar systems, e.g.
just recently from the University of  Maryland,  using  UNIX













and multiplexed files for window management of a 68000-based
home-grown workstation.

6.2.  RISC-LISP

     Yes, Reduced Instruction Set Computer  fans,  who  else
but  UCB  would  be  so bold... Carl Ponder is examining the
issues involved in constructing a fast lisp interpreter  and
compiler  for  the  RISC architecture.  You see, we have all
these chips...


7.  Work Contemplated

7.1.  Fast Number Compiler

     Undergraduate Jeff Cohen at  Berkeley  is  starting  to
look  at  this.   There are several industrial concerns that
have expressed interest in using such a system, but expected
it to be subsidized by someone else.

7.2.  IBM Franz

     Even more nibbles on this one, but not yet.

8.  Business News

8.1.  Eunice SOLD

     Some of you may have heard  that  the  Eunice  software
package was sold by SRI to the Wollongong Group, a UNIX sup-
port group in Palo Alto.   Prices  range  from  $2k  (educa-
tional)  to  $5k (commercial).  Naturally this package is of
interest beyond the availability of Franz Lisp.  We have not
compared  this  product  to  other similar ones, but we know
that TWG has been distributing a working Franz opus 38.

     As far as alternatives to Eunice, we  are  aware  of  a
system  developed  at  Rice University, and another by Human
Computing  Resources  (HCR)  in  Toronto.    We   have   not
evaluated either of these.

8.2.  MACSYMA SOLD

     MIT has sold exclusive rights to MACSYMA, a large alge-
braic  manipulation  system, to Symbolics, Inc. of Cambridge
Mass. This package runs in Franz Lisp, (among  other  Lisps)
We  hope that soon it will again be available to educational
institutions with VAX systems either from us  or  Symbolics,
at a nominal charge.  We understand that commercial licenses
(from Symbolics) for versions of MACSYMA  on  PDP-10s,  Lisp
Machines,  etc.   will distributed at non-nominal prices and
offered with maintenance contracts.