segunda-feira, 24 de dezembro de 2012

Lambda Calculus and Functional Programming references


ebooks in \Library\Lambda

Many books references sent by Abraham Popovich


The Implementation of Functional Programming Languages, Simon L.P. Jones, Prentice-Hall. Lambda Calculus in chapter 2: practical tutorial, short explanation, bBibliography on page 23. Little confusing is the Beta-reduction explanation. The book is oriented to implementation and the Miranda language.

Addison-Wesley - Haskell - The Craft of Functional Programming, 2nd ed - Simon Thompson (1999) 

Wrox - Functional Programming in C# Classic Programming Techniques for Modern Projects (Jun 2011)

[Apress, 2010] Real-World Functional Programming – with Examples in F# and C#

Springer - Drawing Programs - The Theory and Practice of Schematic Functional Programming - 2nd Edition - Jan 2010: to explore, the idea of the failure of visual programming, and use of schematica functional programming the way engineers draw blueprints 

Springer - Advanced Functional Programming Edition 2009 (Elements) Haskell, Proceedings of a Symposium

Bird, Wadler. Introduction to Functional Programming.1ed. Good practical introduction, with Miranda examples

Dynamic Programming - Foundations And Principles 2Nd Ed - M Sniedovich (Crc, 2011): nothing to do with functional programming. This is about optimization techniques.

Cambridge - Steps  in .Scala An Introduction to Object Functional Programming 2010, RETAiL.EBook-DiGiBook

Introduction To Functional Programming (Lambda Calculus) - Mike Gordon - Lecture Notes: too terse, difficult, good history with references for further study in chapter 1 page 1. Introduction to the ML language with examples.

A Tutorial Introduction to the Lambda Calculus Raul Rojas 1997. Short and painless. With the definition of numbers, arithmetic and recursion.

Type Theory and Functional Programming, Simon Thompson 1999. Tough, rigorous, abstract, not practical. Touches on fundamental logic topics like type theory, model theory, logics. Bibliographic references page 31.

Springer - Functional and Logic Programming -Jul 2004 Symposium. Note the use of functional - and imperative - programming in quantum computing.

[O'Reilly] Functional Programming for Java Developers. Short and sweet. Full of teaser to the main ideas in functional programming.

Loverdos & Syropoulos - Steps in Scala - An Introduction to Object-Functional Programming

A Functional Approach to Data Structures and its Use in Multidimensional Searching, Bernard Chazelle, 1988: good example of mathematics development of a data structure useful in functional programming 

ebooks in \Library\Lambda

Many books references sent by Abraham Popovich

Why Functional Programming Matters, John Hughes, very good, goes to the point on why using functional programming, with detailed examples and concepts for the development of complex systems. Idea of modularity explained and detailed.

Introduction to Lambda Calculus, Henk Barendregt Erik Barendsen, Revised edition, December 1998, March 2000, detailed explanation of Lambda Calculus concepts, with complete description, definition, theorems.

See in the reference to Omega language a presentation by Tim Sheard on Lambda Calculus, LambdaCalculator.

Church’s Thesis and Functional Programming, David Turner, Middlesex University, UK: excellent, complete, short, with references, mentionned Miranda language.
From Lambda the Ultimate:David Turner gives a condensed summary of the lambda calculus and functional programming in this paper on Church’s Thesis and Functional Programming.The lambda-calculus, which Church developed during the period of convergence from which the Thesis emerged, has influenced almost every aspect of the development of programming and programming languages. It is the basis of functional programming, which after a long infancy is entering adulthood as a practical alternative to traditional ad-hoc imperative programming languages. Many important ideas in mainstream programming languages—recursion, procedures as parameters, linked lists and trees, garbage collectors — came by cross fertilization from functional programming. Moreover the main schools of both operational and denotational semantics are lambda-calculus based and amount to using functional programming to explain other programming systems.
The original project from whose wreckage by paradox lambda-calculus survived, to unify logic with an account of computable functions, appears to have been reborn in unexpected form, via the propositions-as-types paradigm.
Many of the PLT topics mentioned on LtU are covered - PLT in 20 pages or less. I'm still hoping for someone to publish a pop-PLT book that takes something like these 20 pages and turns them into a 800 page novel. In the meantime, this is a nice roadmap for PLT that helps provide the connections between such things as Curry-Howard, Coq, System F. (About as close to a cheatsheet for LtU that I've come across). 
The Untyped Lambda-Calculus, Hossein Hojjat, University of Teheran: good simple presentation

The Y Combinator: two good derivation, here and this one with Javascript

An Introduction to Lambda Calculus and Scheme, Jim Larson, 1996-07-26, short and good

Compiling to lambda-calculus: Turtles all the way down - post with brief ant to the point explanation of lambda calculus, with compilation. One of many useful post in Matt Might rich blog. Many bibliographic references. 

What is a Universal Computing Machine? by Jean-Cahrles Delvenne: interesting, but reader must be familiar with Universal Machines Theory. It is a proposal of a new definition. Related to Wolfram cellular automata.

Nenhum comentário:

Postar um comentário