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
Página
... 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 equality test in polymorphicfunctions 3.14 Equality types 3.15 Polymorphic set ...
... 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 equality test in polymorphicfunctions 3.14 Equality types 3.15 Polymorphic set ...
Página
... matrix arithmetic 7.10 Genericdictionaries and priority queues Building large systems using modules 7.11 Functors withmultiple arguments 7.12 Sharing constraints 7.13 Fullyfunctorial programming 7.14 The open declaration 7.15 Signatures ...
... matrix arithmetic 7.10 Genericdictionaries and priority queues Building large systems using modules 7.11 Functors withmultiple arguments 7.12 Sharing constraints 7.13 Fullyfunctorial programming 7.14 The open declaration 7.15 Signatures ...
Página
... matrix operations. A more flexible way of organizing data is as a tree: Balanced trees permit random access: any part can be reached quickly. In theory, trees offer the same efficiency as arrays; in practice, arrays are often faster ...
... matrix operations. A more flexible way of organizing data is as a tree: Balanced trees permit random access: any part can be reached quickly. In theory, trees offer the same efficiency as arrays; in practice, arrays are often faster ...
Página
Alcanzaste el límite de visualización de este libro.
Alcanzaste el límite de visualización de este libro.
Página
Alcanzaste el límite de visualización de este libro.
Alcanzaste el límite de visualización de este libro.
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