Manual
 previous   up   next 


Manual for the Seed7 programming language


CONTENTS

  1. INTRODUCTION
    1. What is Seed7?
    2. Why a new programming language?
    3. Features of Seed7
    4. How to read the manual
  2. TUTORIAL
    1. Hello world
    2. Greeting
    3. Assignment
    4. Constants
    5. For loop and float expressions
    6. Arrays
    7. Hashes
    8. For loop and containers
    9. Functions
    10. Parameters
    11. Overloading
    12. Templates
    13. Declare a statement
    14. Template declaring a statement
  3. DECLARATIONS
    1. Variable declarations
    2. Constant declarations
      1. Type declarations
      2. Procedure declarations
      3. Function declarations
      4. Forward declarations
      5. Interface declarations
      6. Abstract data types
      7. Templates
    3. Initialization
      1. How the initialization works
    4. Syntax declarations
    5. System declarations
    6. Pragmas
  4. PREDEFINED STATEMENTS
    1. Assignment
    2. Ignoring values
    3. while-statement
    4. repeat-statement
    5. for-statement
    6. for-until-statement
    7. for-step-statement
    8. for-each-statement
    9. for-each-key-statement
    10. for-key-statement
    11. if-statement
    12. case-statement
  5. PREDEFINED TYPES
    1. boolean
    2. integer
    3. bigInteger
    4. rational
    5. bigRational
    6. float
    7. complex
    8. char
    9. string
    10. array
    11. base index array
    12. fixed size array
    13. hash
    14. set
    15. struct
    16. enumeration
    17. bin64
    18. bin32
    19. bin16
    20. bstring
    21. color
    22. pixel
    23. time
    24. duration
    25. file
    26. text
    27. fileSys
    28. pollData
    29. listener
    30. database
    31. sqlStatement
    32. process
    33. category
    34. reference
    35. ref_list
    36. structElement
    37. program
    38. parseError
    39. runError
    40. func
    41. varfunc
    42. void
    43. proc
    44. creator
    45. destroyer
    46. type
    47. object
    48. expr
  6. PARAMETERS
    1. 'val' parameter
    2. 'ref' parameter
    3. 'in' parameter
    4. 'in var' parameter
    5. 'inout' parameter
    6. Call-by-name parameter
    7. Symbol parameter
    8. 'attr' parameter
  7. OBJECT ORIENTATION
    1. Interface and implementation
    2. Dynamic dispatch
    3. Inheritance
    4. Class methods
    5. Multiple dispatch
    6. Replacing pointers with interface types
  8. FILE INPUT AND OUTPUT
    1. Conversion to strings and back
    2. Basic input and output operations
    3. Input and output with conversion
    4. Simple read and write statements
    5. Standard input and output files
    6. Access to operating system files
    7. String files
    8. Keyboard file
    9. Files with line structure
    10. Sockets
    11. Transport Layer Security
    12. User defined file types
    13. Scanning a file
  9. STRUCTURED SYNTAX DEFINITION
    1. The Extended Backus-Naur Form
    2. The Seed7 Structured Syntax Description
    3. The syntax of a statement
    4. Priority and associativity
    5. The syntax of operators
    6. Syntax of predefined statements
    7. Advanced syntax definitions
    8. Comparison of EBNF and S7SSD
  10. TOKENS
    1. White space
      1. Spaces
      2. Comments
      3. Line comments
    2. Identifiers
      1. Name identifiers
      2. Special identifiers
      3. Brackets
    3. Literals
      1. Integer literals
      2. BigInteger literals
      3. Float literals
      4. String literals
      5. Character literals
    4. Unicode characters
  11. EXPRESSIONS
    1. Parentheses
    2. Call expressions
    3. Dot expressions
  12. OPERATING SYSTEM ACCESS
    1. Standard path representation
    2. File properties
      1. fileType
      2. fileSize
      3. getFileMode
      4. setFileMode
      5. getATime
      6. setATime
      7. getCTime
      8. getMTime
      9. setMTime
      10. getOwner
      11. setOwner
      12. getGroup
      13. setGroup
    3. Symbolic links
      1. readLink
      2. finalPath
      3. makeLink
      4. Symbolic link getFileMode
      5. Symbolic link getATime
      6. Symbolic link getMTime
      7. Symbolic link setMTime
      8. Symbolic link getOwner
      9. Symbolic link setOwner
      10. Symbolic link getGroup
      11. Symbolic link setGroup
    4. Directory functions
      1. readDir
      2. openDir
      3. getcwd
      4. chdir
      5. makeDir
      6. homeDir
    5. Maintenance functions
      1. removeFile
      2. removeTree
      3. copyFile
      4. cloneFile
      5. moveFile
    6. Environment
      1. argv(PROGRAM)
      2. name(PROGRAM)
      3. path(PROGRAM)
      4. dir(PROGRAM)
      5. file(PROGRAM)
      6. getenv
      7. setenv
      8. unsetenv
      9. environment
  13. DATABASE ABSTRACTION API
    1. Opening a database connection
      1. Opening an Oracle database connection
      2. Opening a Db2 database connection
      3. Opening a SQL Server database connection
      4. Opening a SQLite database connection
      5. Opening an Informix database connection
      6. Opening an ODBC database connection
    2. Other ways to open a database connection
    3. Prepared statements
    4. Bind values to placeholders
    5. Execute a prepared statement
    6. Fetch records from the result set
    7. Get columns from fetched records
  14. GRAPHIC LIBRARY
    1. Color
    2. Drawing primitives
    3. Opening a window
    4. Reading an image
    5. String array images
    6. Drawing text
    7. Pixel
  15. PRIMITIVE ACTIONS
    1. Actions for the type ACTION
    2. Actions for array types
    3. Actions for the type bigInteger
    4. Actions for the types bin32 and bin64
    5. Actions for the type boolean
    6. Actions for byte strings
    7. Actions for the type char
    8. Actions for various directory, file and other commands
    9. Actions for text (console) screen output
    10. Actions for declarations
    11. Actions to do graphic output
    12. Actions for enumeration types
    13. Actions for the type clib_file
    14. Actions for the type float
    15. Actions to support the graphic keyboard
    16. Actions for hash types
    17. Actions for the type integer
    18. Actions for interface types
    19. Actions to support the text (console) screen keyboard
    20. Actions for the type process
    21. Actions for the type pointList
    22. Actions for the type pollData
    23. Actions for proc operations and statements
    24. Actions for the type program
    25. Actions for the type reference
    26. Actions for the type ref_list
    27. Actions for struct types
    28. Actions for the type structElement
    29. Actions for set types
    30. Actions for the type PRIMITIVE_SOCKET
    31. Actions for the types database and sqlStatement
    32. Actions for the type string
    33. Actions for the type time
    34. Actions for the type type
    35. Actions for the type utf8File
  16. FOREIGN FUNCTION INTERFACE
    1. C types used by the implementation
    2. System variables
    3. String conversions
    4. Operating system string and path conversions
    5. Macros to access the action parameters
    6. Functions to create action results
    7. Memory management macros
    8. Basic conversion functions
    9. Error handling
  17. ERRORS
    1. Parsing errors
    2. Compilation errors
    3. Exceptions
      1. MEMORY_ERROR
      2. ASSERTION_ERROR
      3. NUMERIC_ERROR
      4. OVERFLOW_ERROR
      5. INDEX_ERROR
      6. RANGE_ERROR
      7. FILE_ERROR
      8. DATABASE_ERROR
      9. GRAPHIC_ERROR
      10. ILLEGAL_ACTION
    4. Handlers
    5. Trace exceptions
    6. Stack trace
    7. Suppressing exception checks
    8. Signals
    9. Other errors and warnings

 previous   up   next