Computer Science BooksFunctional Programming Books

Functional Programming by Loyola Marymount University

Functional Programming by Loyola Marymount University

Functional Programming by Loyola Marymount University

This is a resource provided by Loyola Marymount University on functional programming. It starts with a basic explanation and goes further into how one can make a shift from imperative programming to functional. The key topics it covers are higher-order functions, which are the backbone for doing functional programming in order to write abstract code reuse. This paper describes closures and purity, including side effects, in detail to apprise the reader about the value of immutability and functional purity. It describes both the functional and object-oriented programming paradigms, then it points to point-free programming, and concludes with an overview of the functional programming landscape. This should be a good reference for students and practitioners alike who want to know about the basics in functional programming and its theoretical underpinnings.

Author(s):

sNA Pages
Similar Books
Introduction to Functional Programming and the Structure of Programming Languagesusing OCaml

Introduction to Functional Programming and the Structure of Programming Languagesusing OCaml

Gert Smolka's "Introduction to Functional Programming and the Structure of Programming Languages using OCaml" is an extensive tutorial that deals with the functional principles of programming using OCaml. The document first addresses basic issues like syntax and semantics, thereby providing a solid grounding in the theoretical issues concerning programming languages. Polymorphic functions are considered, iteration has been discussed, and lists, constructor types, and trees have been dealt with, including linearization. The notes include practical aspects such as parsing and a mini OCaml interpreter to help in the implementation of functional languages. Additional topics include running time analysis, inductive correctness proofs, and arrays. It takes a well-rounded approach to functional programming and data structures; both theoretical ideas and practice are emphasized.

s195 Pages
Functional Programming Lecture Notes by David Walker

Functional Programming Lecture Notes by David Walker

David Walker's 'Functional Programming Lecture Notes' give quite an extended introduction to functional programming using OCaml. The notes introduce the reader to the very basics of OCaml and simple manipulations of data, from thinking in recursion to problem-solving. It covers Polymorphism and Higher-Order programming, commonly referred to as PolyHO. It will discuss functions operating on other functions and even data. Pipelines and datatypes have been explained purely from functional programming paradigms. It first introduces the functional evaluation model and functional space model, thereby introducing the reader to the theoretical points of view of functional programming. Equational reasoning, modules, functors, and modular reasoning are other topics treated within this context, while more practical aspects concern mutable data structures, threads, and parallel complexity models. This book will no doubt be very useful to those readers who would wish to become acquainted with both the theory and practice of functional programming.

sNA Pages
Type Theory and Functional Programming

Type Theory and Functional Programming

Simon Thompson's Type Theory and Functional Programming explains the connection between type theory and functional programming. The book starts with an introduction to propositional and predicate logic, which gives a basis needed to understand type theory. It then leads on to functional programming and &

sNA Pages
Functional Programming I

Functional Programming I

Authored by Graham Hutton, this online course module introduces the basic axioms of functional programming using Haskell, which is a modern functional programming language. It introduces the learner to the basic ideas of functional programming: immutability of data, purity of function, higher-order functions. Students will work through practical examples and exercises to build a firm grasp of methods in functional programming. This course is aimed at understanding and applying core principles in Haskell to enable learners to fathom the advantages and paradigms of functional programming. Therefore, it's a good resource for beginners who wish to investigate functional programming through getting their hands dirty with Haskell.

sNA Pages