BT
x Your opinion matters! Please fill in the InfoQ Survey about your reading habits!

Presentation: Taming Effects with Functional Programming

by Abel Avram on Mar 12, 2009 | NOTICE: The next QCon is in San Francisco Nov 3-7, Join us!

In this presentation recorded during QCon London 2008, Simon Peyton-Jones advertises the need for programming purity achieved especially through use of functional languages and the increased attention given to functional programming.

Watch: Taming Effects with Functional Programming (1h)

Jones explains how imperative programming – done in languages like C, C++, Java, C# - is done by a flow of control with many side effects. Those side effects can have unpredictable consequences on a program, and they are pretty difficult to detect and the attempt to remove them may result in more side effects.

Jones advertises the need for functional programming, based on flow of data instead of control, and introduces Haskell as the purest language out there. Functional programming is described by one of the following phrases:

  • Same inputs always means same outputs
  • Purity
  • Referential transparency
  • No side effects
  • Value oriented programming

Jones presents the symbiosis between imperative languages and functional ones, the former gradually evolving by including the functional programming paradigm, while the later, like Haskell, are using new concepts like the software transactional memory  (STM).

The main idea of the presentation is that today there is a lot more focus on functional programming than 10 years ago, and will further increase in the future fueled by the need to control the side effects, especially vital in parallel computation.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT