|						|
		|                 Amiga E v3.3a                 |
		|          Compiler for The E Language          |
		|           By Wouter van Oortmerssen           |
		|						|


	 0. compiler and introduction
	    A. introduction  
	    B. the distribution  
	    C. demo restrictions, registration and sites  
	    D. installing/using the compiler  
	    E. changes / history / new features  
	    F. additional information  

	 1. format
	    A. tabs,lf etc.  
	    B. comments  
	    C. identifiers and types  

	 2. immediate values
	    A. decimal (1)  
	    B. hexadecimal ($1)  
	    C. binary (%1)  
	    D. float (1.0)  
	    E. character  
	    F. strings ('bla')  
	    G. lists ([1,2,3]) and typed lists  
	    H. lisp-cells (<a|b>)  

	 3. expressions
	    A. format  
	    B. precedence and grouping  
	    C. types of expressions  
	    D. function calls  

	 4. operators
	    A. math (+ - * /)  
	    B. comparison (= <> > < >= <=)  
	    C. logical and bitwise (AND OR)  
	    D. unary (SIZEOF ` ^ {} ++ -- -)  
	    E. triple (IF THEN ELSE)  
	    F. structure (.)  
	    G. array ([])  
	    H. float operator (!)  
	    I. assignments expressions (:=)  
	    J. sequencing (BUT)  
	    K. dynamic memory allocation (NEW)  
	    L. unification (<=>)  
	    M. pointer typing (::)  

	 5. statements
	    A. format (;)  
	    B. statement labels and gotos (JUMP)  
	    C. assignment (:=)  
	    D. assembly mnemonics  
	    E. conditional statement (IF)  
	    F. for-statement (FOR)  
	    G. while-statement (WHILE)  
	    H. repeat-statement (REPEAT)  
	    I. loop-statement (LOOP)  
	    J. select-case-statement (SELECT)  
	    K. increase statement (INC/DEC)  
	    L. void expressions (VOID)  
	    M. memory deallocation (END)  

	 6. function definitions and declarations
	    A. proc definition and arguments (PROC)  
	    B. local and global definitions: scope (DEF)  
	    C. endproc/return  
	    D. the `main' function  
	    E. built-in system variables  
	    F. default arguments to functions  
	    G. multiple return values  
	    H. function values  

	 7. declaration of constants
	    A. const (CONST)  
	    B. enumerations (ENUM)  
	    C. sets (SET)  
	    D. built-in constants  

	 8. types
	    A. about the `type' system  
	    B. the basic type (LONG/PTR)  
	    C. the simple type (CHAR/INT/LONG)  
	    D. the array type (ARRAY)  
	    E. the complex type (STRING/LIST)  
	    F. the compound type (OBJECT)  
	    G. initialisation  
	    H. the essentials of the E typesystem  

	 9. built-in functions
	    A. io functions  
	    B. strings and string functions  
	    C. lists and list functions  
	    D. intuition support functions  
	    E. graphics support functions  
	    F. system support functions  
	    G. math and other functions  
	    H. string and list linking functions  
	    I. lisp-cells and cell functions  

	10. library functions and modules
	    A. built-in library calls  
	    B. interfacing to the amiga system with the v40 modules  
	    C. compiling own modules  
	    D. the modulecache  

        11. quoted expressions
	    A. quoting and scope  
	    B. Eval()  
	    C. built-in functions  

        12. floating point support
	    A. float values  
	    B. computing with floats  
	    C. builtin float functions  
	    D. float implementation issues  

	13. Exception handling
	    A. defining exception handlers (HANDLE/EXCEPT)  
	    B. using the Raise() function  
	    C. defining exceptions for built-in functions (RAISE/IF)  
	    D. use of exception-ID's  

        14. OO programming
	    A. OO features in E  
	    B. object inheritance  
	    C. data hiding (EXPORT/PRIVATE/PUBLIC)  
	    D. methods and virtual methods  
	    E. Constructors, Destructors and Super-Methods (NEW,END,SUPER)  

	15. inline assembly
	    A. identifier sharing  
	    B. the inline assembler compared to a macro assembler  
	    C. ways using binary data (INCBIN/CHAR..)  
	    D. OPT ASM  
	    E. Inline asm and register variables  

	16. technical and implementation issues
	    A. the OPT keyword  
	    B. small/large model  
	    C. stack organisation  
	    D. hardcoded limits  
	    E. error messages, warnings and the unreferenced check  
	    F. compiler buffer organisation and allocation  
	    G. register allocation  

	17. Essential E Utilities / Applications
	    A. ShowModule  
	    B. ShowHunk  
	    C. Pragma2Module / Iconvert  
	    D. ShowCache / FlushCache  
	    E. ecompile.rexx  
	    F. o2m  
	    G. E-Yacc  
	    H. SrcGen  
	    I. EBuild  
	    J. EE / Aprof  
	    K. EDBG  
	    L. EC PreProcessor  
	    M. EC Library mode  

	18. Appendices
	    A. E Grammar description  
	    B. Tutorial  
	    C. Mapping E to C/C++/Pascal/Ada/Lisp etc.  
	    D. Amiga E FAQ  
	    E. TODO/BUG list  

Converted using GuideML V1.4, a converter written by Richard Körber <>