Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
605 views

Functional Programming Languages

This document provides an overview of functional programming including: 1) It discusses the history of functional programming beginning with Alonzo Church developing Lambda Calculus in 1936 and the development of Lisp, Hope, ML, Scheme, Miranda, and Haskell. 2) It outlines some advantages as easier to design, debug, and lead to cleaner code as well as some disadvantages as potential for stack overflows and high memory use. 3) It provides some examples of applications including computer algebra, natural language processing, artificial intelligence, and automatic theorem proving.

Uploaded by

Katrin_De_Sandra
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
605 views

Functional Programming Languages

This document provides an overview of functional programming including: 1) It discusses the history of functional programming beginning with Alonzo Church developing Lambda Calculus in 1936 and the development of Lisp, Hope, ML, Scheme, Miranda, and Haskell. 2) It outlines some advantages as easier to design, debug, and lead to cleaner code as well as some disadvantages as potential for stack overflows and high memory use. 3) It provides some examples of applications including computer algebra, natural language processing, artificial intelligence, and automatic theorem proving.

Uploaded by

Katrin_De_Sandra
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 12

λ

Functional
Programming
Outline
• Introduction
• History
• Advantages and
Disadvantages
• Applications
• Example
Introducti
on

Functional programming is a coding style
that exhibits the following characteristics:


Power and flexibility

Simplicity

Suitable for parallel processing
History

Alonzo Church
developed
Lambda Calculus
as part of his
investigations on
Math foundations
on 1936.
History

Lisp (1960)

Hope (1970s)

ML (1970s)

Scheme (1975)

Miranda (1980s)

Haskell (1990)
Advantage
s
• Easier to design
• Easier to debug
• Can lead to more efficient programs
• Can lead to more efficient use of the
programmer’s time
• Leads to aesthetically cleaner code
• Functional languages are often interpreted
AND.
Disadvanta
ges

Too much recursion can overflow
the stack;

High memory use from creating so
many objects…
Application
s
• Computer algebra (e.g. Reduce system)
• Natural language processing
• Artificial intelligence
• Automatic theorem proving
• Algorithmic optimization of functional
programs
LET’S
TRY..
Imperative
1.Take a bread
2. Spread bread with
butter
3. Put cheese on the
bread
4. Return sandwich

Functional
Return put ( cheese, spread
(butter, bread) )
Questions?

You might also like