ML for the Working ProgrammerCambridge University Press, 1996 M06 28 The new edition of this successful and established textbook retains its two original intentions of explaining how to program in the ML language, and teaching the fundamentals of functional programming. The major change is the early and prominent coverage of modules, which are extensively used throughout. In addition, the first chapter has been totally rewritten to make the book more accessible to those without experience of programming languages. The main features of new Standard Library for the revised version of ML are described and many new examples are given, while references have also been updated. Dr Paulson has extensive practical experience of ML and has stressed its use as a tool for software engineering; the book contains many useful pieces of code, which are freely available (via the Internet) from the author. He shows how to use lists, trees, higher-order functions and infinite data structures. Many illustrative and practical examples are included.. Efficient functional implementations of arrays, queues, priority queues, etc. are described. Larger examples include a general top-down parser, a lambda-calculus reducer and a theorem prover. The combination of careful explanation and practical advice will ensure that this textbook continues to be the preferred text for many courses on ML. |
Dentro del libro
Resultados 1-5 de 68
Página
... Naming constants 2.2 Declaring functions 2.3 Identifiers in Standard ML Numbers, character strings and truth values 2.4 Arithmetic 2.5 Strings and characters 2.6 Truth values and conditional expressions Pairs, tuples and records.
... Naming constants 2.2 Declaring functions 2.3 Identifiers in Standard ML Numbers, character strings and truth values 2.4 Arithmetic 2.5 Strings and characters 2.6 Truth values and conditional expressions Pairs, tuples and records.
Página
Larry C. Paulson. 2.6 Truth values and conditional expressions Pairs, tuples and records 2.7 Vectors: an example of pairing 2.8 Functions with multiple arguments and results 2.9 Records 2.10 Infix operators The evaluation of expressions ...
Larry C. Paulson. 2.6 Truth values and conditional expressions Pairs, tuples and records 2.7 Vectors: an example of pairing 2.8 Functions with multiple arguments and results 2.9 Records 2.10 Infix operators The evaluation of expressions ...
Página
... pairs Applications of lists 3.7 Making change 3.8 Binary arithmetic 3.9 Matrix transpose 3.10 Matrixmultiplication 3.11 Gaussian elimination 3.12 Writing a number asthesumof two squares 3.13 The problem of the nextpermutation The ...
... pairs Applications of lists 3.7 Making change 3.8 Binary arithmetic 3.9 Matrix transpose 3.10 Matrixmultiplication 3.11 Gaussian elimination 3.12 Writing a number asthesumof two squares 3.13 The problem of the nextpermutation The ...
Página
... pairs of lists Signaturesand abstraction 7.4 Theintended signature for queues 7.5 Signature constraints 7.6 The abstype declaration 7.7 Inferred signaturesfor structures Functors 7.8 Testing thequeuestructures 7.9 Generic matrix ...
... pairs of lists Signaturesand abstraction 7.4 Theintended signature for queues 7.5 Signature constraints 7.6 The abstype declaration 7.7 Inferred signaturesfor structures Functors 7.8 Testing thequeuestructures 7.9 Generic matrix ...
Página
... pairs belong to the structuresList and ListPair. Some of thesewillbe described in later chapters. • Integer operationsbelong tothe structure Int. Integers maybe available in various precisions. These may include the usual hardware ...
... pairs belong to the structuresList and ListPair. Some of thesewillbe described in later chapters. • Integer operationsbelong tothe structure Int. Integers maybe available in various precisions. These may include the usual hardware ...
Contenido
Summary of main points 4 Trees and Concrete Data | |
Functions and InfiniteData Chapter outline Functions asvalues 5 1 Anonymous functionswith | |
Summary of main points 3 Lists | |
Summary of main points 7 Abstract Types andFunctors Chapter outline | |
Imperative Programming in ML | |
Summary of main points 10 A Tactical Theorem Prover | |
Términos y frases comunes
abstract type algorithm applied argument arithmetic binary search trees binary tree callbyvalue canbe characters components compute constructors contains curried function data structures datatype datatype declaration defined depthfirst search dictionary efficient elements empty error example exception Exercise expression flexible arrays foldl foldr formula functional programming functor handler heap higherorder functions imperative programming implement infix infix operator input insert integers iterative label lazy evaluation logic lookup match mathematical mathematical induction matrix merge sort ML’s modules multisets natural numbers node normal form notation numbers ofthe output pairs parameter parser parsing pattern patternmatching polymorphic polynomials predicate priority queues proof proposition prove quantifier real numbers recursive call recursive functions references replaces representation represented result returns rule Section sequence sequent calculus signature solutions sort specifies standard library Standard ML string structural induction subgoal subtrees syntax tactics takes term terminate theorem update vector wellfounded