home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / archives / 3705 < prev    next >
Encoding:
Internet Message Format  |  1992-11-08  |  8.9 KB

  1. Path: sparky!uunet!think.com!spool.mu.edu!agate!agate!usenet
  2. From: ronny@cs.kun.nl (Ron Wichers Schreur)
  3. Newsgroups: comp.archives
  4. Subject: [comp.lang.functional] Clean 0.8 Announcement
  5. Followup-To: comp.lang.functional
  6. Date: 7 Nov 1992 12:52:07 GMT
  7. Organization: University of Nijmegen, The Netherlands
  8. Lines: 173
  9. Sender: adam@soda.berkeley.edu
  10. Approved: adam@soda.berkeley.edu
  11. Distribution: world
  12. Message-ID: <1dge5nINN721@agate.berkeley.edu>
  13. References: <BxAF25.A3y@sci.kun.nl>
  14. NNTP-Posting-Host: soda.berkeley.edu
  15. Summary: Clean version 0.8 released
  16. X-Original-Newsgroups: comp.lang.functional
  17. X-Original-Date: Fri, 6 Nov 1992 09:15:40 GMT
  18.  
  19. Archive-name: auto/comp.lang.functional/Clean-0-8-Announcement
  20.  
  21.  
  22.  
  23.                        +-----------------------------+
  24.                        | The Concurrent Clean System |
  25.                        | --------------------------- |
  26.                        | Version 0.8.1, October 1992 |
  27.                        |                             |
  28.                        |     Research Institute      |
  29.                        |            for              |
  30.                        |     Declarative Systems     |
  31.                        |                             |
  32.                        |   University of Nijmegen    |
  33.                        |-----------------------------|
  34.                        |   E-mail: clean@cs.kun.nl   |
  35.                        +-----------------------------+
  36.  
  37.  
  38. The Concurrent Clean system is a programming environment for the functional
  39. language Concurrent Clean, developed at the University of Nijmegen, The
  40. Netherlands. The system is one of the fastest implementations of functional
  41. languages available at the moment. Its I/O libraries make it possible to do
  42. modern, yet purely functional I/O (including windows, menus, dialogs etc.) in
  43. Concurrent Clean. With the Concurrent Clean system it is possible to develop
  44. real-life applications in a purely functional language.
  45.  
  46. Since October 1992 version 0.8.1 of the Concurrent Clean System is available via
  47. anonymous FTP (ftp.cs.kun.nl (131.174.81.1) in the directory pub/Clean).
  48. There are versions of the system for the Apple Macintosh as well as for Sun3 and
  49. Sun4. This paper intends to describe exactly which parts of the Concurrent Clean
  50. system version 0.8 are available on each machine. For the Mac also the minimum
  51. configuration requirements are given. At the end the extensions and improvements
  52. that will be released in the near future will be summed up.
  53.  
  54. When you have any questions about Concurrent Clean and/or the Concurrent Clean
  55. system send us an e-mail (mail to clean@cs.kun.nl). Please send us your e-mail
  56. address when you take a copy of the Concurrent Clean system such that we can
  57. inform you about important changes and upgrades.
  58.  
  59. On special request our code generator for the Parsytec Supercluster transputer
  60. rack can be obtained. Mail us when you are interested.
  61.  
  62.  
  63. Concurrent Clean
  64. ----------------
  65.  
  66. Concurrent Clean is a lazy and purely functional programming language, based on
  67. graph rewriting. The most important features of Concurrent Clean are:
  68.  
  69. - It is a strongly typed language. The type system is based on the Milner/
  70.   Mycroft scheme, extended with unique types. It includes polymorphic types,
  71.   abstract types, algebraic types and synonym types, as well as basic types.
  72.  
  73. - It has a module structure with a facility to explicitly and implicitly import
  74.   definitions from other modules. There are libraries for basic operations on
  75.   objects of basic types (integers, reals, strings etc.).
  76.  
  77. - Modern input/output handling (including menus, windows, dialogs and mouse
  78.   handling) can be specified elegantly on a high level of abstraction. Thanks to
  79.   the unique types the I/O handling remains purely functional.
  80.  
  81. - With annotations the evaluation order can be influenced by the programmer.
  82.   Functions can be made (partially) eager instead of lazy.
  83.  
  84. - It is possible to split up the execution of a program in parts that are to be
  85.   evaluated interleaved or in parallel.
  86.  
  87.  
  88. Concurrent Clean on the Apple Macintosh
  89. ---------------------------------------
  90.  
  91. The Concurrent Clean System version 0.8 for the Macintosh runs on any Mac with
  92. system 6.0 or higher, including system 7. To be able to use the system properly
  93. at least 2 Mb of free memory is needed. When large applications are developed
  94. more memory might be necessary (up to 3 Mb). So, when you want to use the
  95. Concurrent Clean system under system 7 (which takes about 2 Mb), you need a Mac
  96. with at least 4 Mb and possibly 5 Mb of internal memory. The complete system
  97. (including documentation, interfaces and example programs) takes about 6 Mb of
  98. harddisk space. The system has been tested on Mac Plus, Mac LC, all kinds of Mac
  99. II's (from II to IIfx) and Quadra, under system 6 as well as system 7, with
  100. different versions of the Finder. We have also tested the system on an Atari
  101. computer from the ST line which was equipped with a Mac emulator (Spectre).
  102.  
  103. On the Apple Macintosh the Concurrent Clean system consists of the following
  104. parts:
  105.  
  106. - A complete program development environment, following the Mac's user interface
  107.   philosophy. This programming environment includes:
  108.  
  109.   - A text editor.
  110.   - A project manager that checks and controls the consistency of all files,
  111.     windows and options such that the compilation, code generation, linking,
  112.     launching and simulation of Clean programs can be invoked with one command.
  113.   - A compiler that translates Clean into (intermediate) PABC code.
  114.   - A code generator/linker that generates proper Mac applications.
  115.   - A PABC simulator/interpreter that makes it possible to simulate and trace
  116.     the parallel execution of a Concurrent Clean program.
  117.   - An on-line help facility that contains information about all aspects of the
  118.     Concurrent Clean system for the Macintosh. The on-line help file can be
  119.     printed. It can serve as a user's manual for the system.
  120.  
  121. - An I/O library that provides an interface with the Macintosh toolbox. This
  122.   library makes it possible to write interactive programs on a very high level
  123.   of abstraction, without losing the functional properties of the program. The
  124.   I/O interface library contains primitives to handle menus, dialogues, windows,
  125.   keyboard and mouse input and of course file I/O.
  126.  
  127. - An application (PABCstat) that can interpret the statistic files generated by
  128.   the PABC simulator during simulation of a parallel Concurrent Clean program.
  129.   With this application the execution can be traced and statistical information
  130.   (parallelism, communication) can be displayed graphically.
  131.   
  132. - A set of example programs, including some larger projects that show the
  133.   possibilities of Concurrent Clean's I/O interface.
  134.   
  135. - The Concurrent Clean version 0.8 language manual. This manual is distributed
  136.   in MS Word format. It contains a complete overview of the syntax and semantics
  137.   of the language Concurrent Clean and its predefined libraries.  
  138.  
  139.  
  140. Concurrent Clean on Sun 3 and Sun 4
  141. -----------------------------------
  142.  
  143. On the Sun's (both Sun3 and Sun4) no menu-driven, window-oriented programming
  144. environment is available. Furthermore, no I/O libraries (except for file I/O)
  145. are available yet. Lastly, no statistics application (for the post mortem trace
  146. of parallel simulations) has been implemented for the Sun.
  147. The Concurrent Clean system for Sun 3 & 4 consists of the following parts:
  148.  
  149. - A project manager that checks and controls the consistency of all files and
  150.   options such that the compilation, code generation and linking of Clean
  151.   programs can be invoked with one command.
  152.  
  153. - A compiler that translates Clean into (intermediate) PABC code.
  154.  
  155. - A code generator that produces MC68020 (Sun3) or Sparc (Sun4) assembly code.
  156.   This code can be assembled and linked by the standard Unix assembler/linker.
  157.   
  158. - A PABC simulator/interpreter that makes it possible to simulate and trace the
  159.   parallel execution of a Concurrent Clean program. The simulator/interpreter
  160.   has its own command-line interface.
  161.   
  162. - A set of small example programs.
  163.  
  164. - Documentation that contains information about the installation and use of the
  165.   Concurrent Clean system on Sun3/4. Manual pages for the make command are
  166.   included. The simulator/interpreter has its own on-line help facility.
  167.   
  168. - The Concurrent Clean version 0.8 language manual, both in Macintosh MS Word
  169.   format as well as in ASCII format.
  170.  
  171.  
  172. The near future
  173. ---------------
  174.  
  175. Before the end of 1992 we plan to release:
  176.  
  177. - An I/O interface with X Windows / Open Look for the Sun4. The Macintosh
  178.   version of the I/O interface will also be revised then, to become fully
  179.   compatible with the Open Look version.
  180.  
  181. - A Miranda (trademark of Research Software Ltd.) interface for both the Mac
  182.   and Sun versions. With this interface it will be possible to convert (simple)
  183.   Miranda scripts into Clean modules.
  184.  
  185. - An improved linker that generates smaller applications for Mac and Sun4.
  186.  
  187. Probably we will also release:
  188.  
  189. - A code generator/linker for the Macintosh that is capable of generating
  190.   applications that simulate parallel execution on a multi-processor machine.
  191.  
  192.