BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Presentations Functional Programming: A Pragmatic Introduction

Functional Programming: A Pragmatic Introduction

Bookmarks
48:34

Summary

Jim Duey explains functional programming through Java code samples, emphasizing the need for a mindset change in approaching coding and why the functional paradigm is useful.

Bio

Jim Duey has spent over 20 years as a professional programmer. He founded Intensive Systems Consulting, Inc. for Clojure consulting, an embedded/industrial software consulting and developer mentoring. He has written several tutorials on Clojure programming. He can be reached at intensivesystems.net and @JimDuey.

About the conference

Code PaLOUsa is a conference designed to cover all aspects of software development regardless of technology stack. It has sessions revolving around Microsoft, Java, and other development platforms; along with session on higher levels that are platform agnostic. The conference schedule will feature presentations from well-known professionals in the software development community.

Recorded at:

May 06, 2011

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.

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

Community comments

  • relate to erlang or not?

    by Meng Jian,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Is this talk relate to erlang or something like that?

  • C++ is now functional

    by Faisal Waris,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The new C++ standard (almost done) supports lambdas and clojures - as the speaker notes.

    The main idea was to support working at a higher level of abstraction and yet allow fine-grain control for performance.

    This should be very significant over the long haul.

  • Re: relate to erlang or not?

    by Ricardo Aguas,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    No, This video explains a little bit of functional programming concepts applyed to OO Programming, in this case, Java.

  • So now java is jumping on the bandwagon as well

    by david karapetyan,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Functional programming in Java is a little silly. You don't see Haskell programmers trying to code solutions using object oriented patterns. The Java platform is not suitable for functional programming because it is not built for optimizing patterns and process that functional programmers use. There is nothing to be gained from using functional constructs in a java setting until the platform adapts and starts to optimize functional constructs unless of course you want to write slow java code like in 1.0 days in which case go right ahead and pepper your code with inner classes galore.

  • Good explanation

    by Baljeet Sandhu ,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Good talk. As a Java programmer this a nice and gentle introduction to the topic for me and a lot of it stuck. Lots of other resources on the topic get complicated so quick that they discourage beginners. Of course I assumed that the use of Java was more for demo purposes only. In real life I would pick a more suitable language.

  • Re: So now java is jumping on the bandwagon as well

    by P. H.,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Since
    (1) He said he wasn't teaching folks to write functional programming in Java; he was showing the functional thinking.
    (2) Languages don't "jump" on anything, but possibly this metaphor could be have meaning if and when there is syntax support for functional programming. He wasn't talking about this other than to mention in passing the lack of syntax support.
    (3) "Optimizing patterns and process that functional programmers use" that would NOT only be the role of the compiler, but would be the role of the runtime. Scala and other languages have shown that functional languages can work effectively on VMs (JVM, CLR ...).

    Seems your odd rant has little applicability.

  • Re: So now java is jumping on the bandwagon as well

    by Henrik Baastrup,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Yes - to me it looks like he have taken out the good old Strategy GOF pattern and try to use it in deferent ways. So I believe that you are right, using Java as an example for Functional Programming is not the best language.

  • Re: So now java is jumping on the bandwagon as well

    by Stephan Kennedy,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I believe he was using java so that he could explain some concepts of functional programming to java developers without complicating the presentation by having to explain a functional programming language as well.

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

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

BT