An Introduction to Functional Programming Through Lambda Calculus

An Introduction to Functional Programming Through Lambda Calculus

Author: Greg Michaelson

Publisher: Courier Corporation

Published: 2013-04-10

Total Pages: 338

ISBN-13: 0486280292

DOWNLOAD EBOOK

Well-respected text for computer science students provides an accessible introduction to functional programming. Cogent examples illuminate the central ideas, and numerous exercises offer reinforcement. Includes solutions. 1989 edition.


A++ and the Lambda Calculus

A++ and the Lambda Calculus

Author: Georg P. Loczewski

Publisher: tredition

Published: 2018-05-09

Total Pages: 81

ISBN-13: 3746938104

DOWNLOAD EBOOK

The book contains an introduction to the Lambda Calculus as the theoretical foundation of all 'Functional Programming' languages. The Lambda Calculus has been created by the American logician Alonzo Church in the 1930's and is documented in his works published in 1941 under the title 'The Calculi of Lambda Conversion'. Alonzo Church wanted to formulate a mathematical logical system and had no intent to create a programming language. The intrinsic relationship of his system to programming was discovered much later in a time in which programming of computers became an issue. The book 'A++ and the Lambda Calculus' also contains a brief introduction to the educational programming language A++, a minimal programming language that has been built with the Lambda Calculus as its foundation. The purpose of A++ is to serve as a learning instrument rather than as a programming language used to solve practical problems. A++ is supposed to be an excellent tool to become familiar with the core of programming and with programming patterns that can be applied in other languages needed to face the real world. A++ is presented in greater detail in the books: 'A++ The Smallest Programming Language in the World' (978-3-7469-3021-3) and in 'Programmieren lernen mit A++' (978-3-7469-3199-9).


The Calculi of Lambda-conversion

The Calculi of Lambda-conversion

Author: Alonzo Church

Publisher: Princeton University Press

Published: 1985-01-21

Total Pages: 112

ISBN-13: 9780691083940

DOWNLOAD EBOOK

The description for this book, The Calculi of Lambda Conversion. (AM-6), Volume 6, will be forthcoming.


Essentials of Programming Languages, third edition

Essentials of Programming Languages, third edition

Author: Daniel P. Friedman

Publisher: MIT Press

Published: 2008-04-18

Total Pages: 433

ISBN-13: 0262304090

DOWNLOAD EBOOK

A new edition of a textbook that provides students with a deep, working understanding of the essential concepts of programming languages, completely revised, with significant new material. This book provides students with a deep, working understanding of the essential concepts of programming languages. Most of these essentials relate to the semantics, or meaning, of program elements, and the text uses interpreters (short programs that directly analyze an abstract representation of the program text) to express the semantics of many essential language elements in a way that is both clear and executable. The approach is both analytical and hands-on. The book provides views of programming languages using widely varying levels of abstraction, maintaining a clear connection between the high-level and low-level views. Exercises are a vital part of the text and are scattered throughout; the text explains the key concepts, and the exercises explore alternative designs and other issues. The complete Scheme code for all the interpreters and analyzers in the book can be found online through The MIT Press web site. For this new edition, each chapter has been revised and many new exercises have been added. Significant additions have been made to the text, including completely new chapters on modules and continuation-passing style. Essentials of Programming Languages can be used for both graduate and undergraduate courses, and for continuing education courses for programmers.


Types and Programming Languages

Types and Programming Languages

Author: Benjamin C. Pierce

Publisher: MIT Press

Published: 2002-01-04

Total Pages: 656

ISBN-13: 9780262162098

DOWNLOAD EBOOK

A comprehensive introduction to type systems and programming languages. A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they compute. The study of type systems—and of programming languages from a type-theoretic perspective—has important applications in software engineering, language design, high-performance compilers, and security. This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material. The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.


Algol-like Languages

Algol-like Languages

Author: Peter O'Hearn

Publisher: Springer Science & Business Media

Published: 2013-03-12

Total Pages: 285

ISBN-13: 1461241189

DOWNLOAD EBOOK

In recent years there has been a remarkable convergence of interest in programming languages based on ALGOL 60. Researchers interested in the theory of procedural and object-oriented languages discovered that ALGOL 60 shows how to add procedures and object classes to simple imperative languages in a general and clean way. And, on the other hand, researchers interested in purely functional languages discovered that ALGOL 60 shows how to add imperative mechanisms to functional languages in a way that does not compromise their desirable properties. Unfortunately, many of the key works in this field have been rather hard to obtain. The primary purpose of this collection is to make the most significant material on ALGoL-like languages conveniently available to graduate students and researchers. Contents Introduction to Volume 1 1 Part I Historical Background 1 Part n Basic Principles 3 Part III Language Design 5 Introduction to Volume 2 6 Part IV Functor-Category Semantics 7 Part V Specification Logic 7 Part VI Procedures and Local Variables 8 Part vn Interference, Irreversibility and Concurrency 9 Acknowledgements 11 Bibliography 11 Introduction to Volume 1 This volume contains historical and foundational material, and works on lan guage design. All of the material should be accessible to beginning graduate students in programming languages and theoretical Computer Science.