TopPart 6 - Controlling complexity of software systemsTable of contentsDocumentation and user's manualTable of contentsOCaml programs

Table of contents

  • Download
  • About these pages
  • Part 1 - Introduction
  • Tutorial (draft)
  • Programming paradigms
  • Functional programming
  • Functional languages
  • The ML family
  • Part 2 - Expressions and functions
  • Tutorial (draft)
  • Expressions
  • Binding value names
  • Types
  • Automatic type inference
  • Well-typed expressions and computations - Values and types
  • Functional values
  • Polymorphism
  • Functions - Abstraction and application
  • Exercises
  • Exercise 1 - Leap years
  • Exercise 2 - Type inference
  • Exercise 3 - Local definitions
  • Exercise 4 - Closed intervals whose bounds are integers
  • Type-inference by yourself
  • Part 3 - Induction and recursion
  • Tutorial (draft)
  • The factorial function
  • A recursive definition of a type
  • Warning
  • Mutually recursive definitions
  • Writing correct recursive definitions of functions
  • Inductive definition of a set
  • Some inductive definitions of sets
  • Inductive structures
  • Natural numbers
  • Writing correct recursive definitions of functions - Again
  • Exercises
  • Exercise 1 - Natural numbers again
  • Exercise 2 - Natural numbers once more
  • Exercise 3 - Lists
  • Exercise 4 - Lists of closed intervals whose bounds are integers
  • Type-inference by yourself
  • Part 4 - Higher-order functions
  • Tutorial (draft)
  • Functions - Abstraction and application again
  • Higher-order: two well-known examples
  • Higher-order functions
  • Associativity
  • Mapping
  • An accumulator
  • Currying
  • Exercises
  • Exercise 1 - Logarithms
  • Exercise 2 - An accumulator
  • Exercise 3 - Operations over functions
  • Exercise 4 - Filter
  • Exercise 5 - Newton's method
  • Type-inference by yourself
  • Part 5 - Case study - Polynomials in one variable whose coefficients are rational
  • Exercises
  • Exercise 1 - Usual operations over polynomials
  • Exercise 2 - The roots of a polynomial
  • Part 6 - Controlling complexity of software systems
  • Tutorial (draft)
  • Table of contents

  • Latest update : October 5, 2006
    This document was translated from LaTeX by Hyperlatex 2.5, which is not the latest version of Hyperlatex.

    TopPart 6 - Controlling complexity of software systemsTable of contentsDocumentation and user's manualTable of contentsOCaml programs