introduction to functional programming systems using haskell cambridge computer science texts by...
DESCRIPTION
TRANSCRIPT
Introduction to Functional Programming Systems Using Haskell (Cambridge Computer Science Texts)
by Antony J. T. Davie
A Very Good Introductory Book
Functional programming, is a style of programming that has become
increasingly popular during the past few years. Applicative programs have the advantage of being almost immediately expressible as functional
descriptions; they can be proved correct and transformed through the
referential transparency property. This book presents the basic concepts
of functional programming, using the language HASKELL for examples.
The author incorporates a discussion of lambda calculus and its
relationship with HASKELL, exploring the implications for parallelism.
Conceptually the content of this book can be divided into three major
sections. The first is a well constructed overview of Haskell which, though
not suitable as a primary tutorial, is organized in a building block style that
clearly explains the core concepts of the language and their syntax.
Examples are of minimal complexity and fit each purpose well while
remaining free of yet unintroduced material. The other two sections, theory
and implementation, are interleaved to present the material in a constructive way. The introduction to lambda calculus marks the first
deviation from a pragmatic study of Haskell, however, proofs are largely
omitted leaving mostly definitions, relevant theorems, and explanations.
This book served as my introduction to lambda calculus and I found it
somewhere between impenetrable and relaxing, which is to say that it was
very helpful despite requiring a second read. The chapter closes with a
desugaring of Haskell into the simpler constructs of lambda calculus. Next
the properties of applicative languages are studied and implemented (in
Haskell) on a SECD machine. Then lazy evaluation is studied and
techniques of implementation such as SECD, graph reduction, SKI-
combinators, and the G-Machine are covered. Following this is an
overview of program transformations and optimizations with a brief
summary of ongoing work in the field. The three conceptual topics;
language, theory, and implementation are covered uniformly so there is a
decreasing completeness to the Haskell presentations as abstractions pile
up e.g. there is no concrete implementation of lazy evaluation. Instead the
operation of machines is described with graphics or combinators in the
notation of lambda calculus. This book covers implementation adequate for
an intermediate command of Haskell while serving as an excellent
introduction to the theory behind functional programming.
For More 5 Star Customer Reviews and Lowest Price: Introduction to Functional Programming Systems Using Haskell (Cambridge Computer
Science Texts) by Antony J. T. Davie - 5 Star Customer Reviews and Lowest Price!