Table of contents
=================

Eiffel/S 1.3S - 8/95
 
Compiler & Runtime (comp1.man .. comp67.man)

 1 The Eiffel/S Compiler                    comp1.man
   1.1  Introduction   
   1.2  Survey   
   1.3  Installation
   1.4  Conventions 
   1.5  How to compile an Eiffel program 
   1.6  The compiler  
   1.7  Compilermessages
   1.8  Compileroptions 
   1.9  C compilation and linking

 2 The Program Description Language         comp2.man                                            2-1
   2.1  Introduction 
   2.2  Default PDL file 
   2.3  Validity         
   2.4  Structure of a PDL file   
        2.4.1   Comments  
        2.4.2   Keywords  
        2.4.3   File and path names in PDL  
        2.4.4   Separators
        2.4.5   General structure   
        2.4.6   The make clause
        2.4.7   The link clause 
        2.4.8   The lib clause
        2.4.9   Cluster description
        2.4.10  Clusterproperties  
        2.4.11  Renaming
        2.4.12  Use    
        2.4.13  Find 
        2.4.14  Exclude 
        2.4.15  Interface
        2.4.16  hfiles 

 3 The Runtime Control Language             comp3.man
   3.1  Introduction  
   3.2  The RCL Compiler ercc  
   3.3  Default RCL file
   3.4  The structure of an RCL file  
   3.5  Comments       
   3.6  Keywords     
   3.7  Terminals   
   3.8  The language constructs      
        3.8.1  class_list 
        3.8.2  key_list   
        3.8.3  preconditions  
        3.8.4  postconditions 
        3.8.5  loop.variant   
        3.8.6  loop_invariant 
        3.8.7  invariant      
        3.8.8  check     
        3.8.9  trace     
        3.8.10 debug      
        3.8.11 debug_key
        3.8.12 collect    
        3.8.13 threshold    
        3.8.14 cache_size 
        3.8.15 max.handles  
   3.9  An example    

 4 Calling C Routines from Eiffel           comp4.man                                             4-1
   4.1  Preliminary remark     
   4.2  Syntax      
   4.3  Argument passing          
   4.4  Return values         
   4.5  The address operator  
   4.6  Inside C       
   4.7  Using basic types         
   4.8  Using special objects          
   4.9  Using objects of other types   
   4.10 Acceasing attributes 
   4.11 Void tests and assignments 
   4.12 Storing addresses      

 5 Calling Eiffel Routines from C           comp5.man                                               5-1
   5.1  Introduction          
   5.2  Class and feature names             
   5.3  Interface classes         
   5.4  Using interface classes           

 6 The Runtime System                       comp6.man
   6.1  Introduction
   6.2  Presentation
   6.3  Treatment of errors 
   6.4  Strings 
   6.5  Arrays 
   6.6  Bits   
   6.7  Files  
   6.8  Environment
   6.9  Memory management 
   6.10 Time 
   6.11 Exceptions 
   6.12 Garbage collection 
   6.12.1  The method  
  
 7 Restrictions and Deviations              comp7.man                                              7-1
   7.1  Introduction                           
   7.2  Compiler         
   7.3  Release dependent deviations from Eiffel 3  
   7.4  Other deviations                       
   7.5  Libraries 



-- Libray (lib1.man .. lib6.man)


 1 Introduction                             lib1.man
   1.1  The objectives
   1.2  Tools and Materials     
   1.3  The conventions   
   1.4  The ubiquitous semicolon

 2 The BASIC Cluster                        lib2.man                                    2-1
   2.1  The universal classses  
        2.1.1  GENERAL          
        2.1.2  PLATFORM         
        2.1.3  ANY   
   2.2  The property classes  
        2.2.1   COMPARABLE*   
        2.2.2   NUMERIC* 
        2.2.3   HASHABLE*     
   2.3  The special classes  
        2.3.1  BOOLEAN  
        2.3.2  CHARACTER
        2.3.3  INTEGER
        2.3.4  REAL
        2.3.5  DOUBLE 
        2.3.6  ARRAY
   2.4  The other basic classes 
        2.4.1  BITS n 
        2.4.2  STRING 
   2.5  ENVIRONMENT 
   2.6  BASIC_l0 
   2.7  FORMAT  
   2.8  EXCEPTION
        2.8.1   The features of EXCEPTION 
        2.8.2   How to use EXCEPTION  
   2.9  SYSTEM-TIMEE
   2.10 INTERNAL 


 3 FILES                                    lib3.man
   3.1  Clusters and FILE_SYSTEM 3-2
   3.2  How to use files   3-4
   3.3  FILE 3-7
   3.4  FSYS_DAT  3-10
   3.5  FILE_SYSTEM 3-13
        3.5.1  The clusters 3-13
        3.5.2  The files 3-17
        3.5.3  The paths 3-21
   3.6  TEXTFILE  3-23

 4 The Sorter                               lib4.man

 5 MATH                                     lib5.man

 6 The CONTAINER Cluster                    lib6a.man                                     6-1
   6.1  Dynamic arrays   
   6.2  The routines ie_equal, copy
   6.3  LIST 
   6.4  SORTED_l_LIST 
   6.5  SIMPLE TABLE
   6.6  HASH_TABLE  
   6.7  SORTED_TABLE 
   6.8  The short containers
        6.8.1  SHORT_LIST
        6.8.2  SHORT_TABLE  
        6.8.3  SHORT_SORTED_LIST  
        6.8.4  SHORT_SORTED_TABLE 
   6.9  DICTIONARY
   6.10 CATALOG* 
        6.10.1 LIST_CATALOG 
        6.10.2 SORTED_CATALOG 
        6.10.3 SHORT_CATALOG  
        6.10.4 SHORT_SORTED_CATALOG
   6.11 STACK                               lib6b.man
   6.12 QUEUE  
   6.13 PRIORITY_QUEUE
   6.14 KEY_PRIORlTY_QUEUE
   6.15 COLLECTION*  
   6.16 TABLE* 
   6.17 SORTED.COLLECTION* 
   6.18 SORT_TABLE* 
   6.19 TRAVERSABLE*
   6.20 TWOWAY_TRAVERSABLE* 
   6.21 ITERATOR 
   6.22 TWOWAY_ITER 
   6.23 Creating new container classes 
