Functional Programming Using Caml Light
January 4th, 2008 | posted by admin* 1) Introduction
I) Functional programming
* 2) Functional languages
o 2.1) History of functional languages
o 2.2) The ML family
o 2.3) The Miranda family
* 3) Basic concepts
o 3.1) Toplevel loop
o 3.2) Evaluation: from expressions to values
o 3.3) Types
o 3.4) Functions
o 3.5) Definitions
o 3.6) Partial applications
* 4) Basic types
o 4.1) Numbers
o 4.2) Boolean values
o 4.3) Strings and characters
o 4.4) Tuples
o 4.5) Patterns and pattern-matching
o 4.6) Functions
* 5) Lists
o 5.1) Building lists
o 5.2) Extracting elements from lists: pattern-matching
o 5.3) Functions over lists
* 6) User-defined types
o 6.1) Product types
o 6.2) Sum types
o 6.3) Summary
II) Caml Light specifics
* 7) Mutable data structures
o 7.1) User-defined mutable data structures
o 7.2) The {\ptt ref} type
o 7.3) Arrays
o 7.4) Loops: {\ptt while} and {\ptt for}
o 7.5) Polymorphism and mutable data structures
* 8) Escaping from computations: exceptions
o 8.1) Exceptions
o 8.2) Raising an exception
o 8.3) Trapping exceptions
o 8.4) Polymorphism and exceptions
* 9) Basic input/output
o 9.1) Printable types
o 9.2) Output
o 9.3) Input
o 9.4) Channels on files
* 10) Streams and parsers
o 10.1) Streams
o 10.2) Stream matching and parsers
o 10.3) Parameterized parsers
o 10.4) Further reading
* 11) Standalone programs and separate compilation
o 11.1) Standalone programs
o 11.2) Programs in several files
o 11.3) Abstraction
III) A complete example
* 12) ASL: A Small Language
o 12.1) ASL abstract syntax trees
o 12.2) Parsing ASL programs
* 13) Untyped semantics of ASL programs
o 13.1) Semantic values
o 13.2) Semantic functions
o 13.3) Examples
* 14) Encoding recursion
o 14.1) Fixpoint combinators
o 14.2) Recursion as a primitive construct
* 15) Static typing, polymorphism and type synthesis
o 15.1) The type system
o 15.2) The algorithm
o 15.3) The ASL type-synthesizer
* 16) Compiling ASL to an abstract machine code
o 16.1) The Abstract Machine
o 16.2) Compiling ASL programs into CAM code
o 16.3) Execution of CAM code
* 17) Answers to exercises
* 18) Conclusions and further reading
To Download this E-Book Click Here.













Recent comments
5 weeks 2 days ago
14 weeks 8 hours ago
18 weeks 5 days ago
19 weeks 5 days ago
19 weeks 6 days ago
19 weeks 6 days ago
30 weeks 5 days ago
30 weeks 6 days ago
31 weeks 1 day ago
31 weeks 5 days ago