InfoQ Homepage Functional Programming Content on InfoQ
-
Declarative Programming: Towards a Language that Fundamentally Abstracts away from Time
Wim Bast introduces Declare, a new declarative, functional OO language, demoing some of its main features.
-
Keynote: The Value of Values
Rich Hickey compares value-oriented programming with place-oriented programming concluding that the time of imperative languages has passed and it is the time of functional programming.
-
Faith, Evolution, and Programming Languages
Philip Wadler discusses second-order quantification, from its inception in the symbolic logic of Frege through to the generic features introduced in Java 5, touching on aspects of faith and evolution.
-
Erlang for C# Developers
Bryan Hunter introduces Erlang, comparing various language features with C#’s, emphasizing what it is good for and doing a demo.
-
Erlang, The Road Movie
Kresten Krab Thorup discusses cloud, multi-core, integration, high availability, and imperfect software starting from discoveries made while learning Erlang.
-
Programming with Values in Clojure
Alan Dipert discusses the benefits of functional programming in Clojure, suggesting using pure functions to process values and sometimes explicit procedures for needed side effects.
-
Why APL Is Still Cool
Joel Hough and Morten Kromberg present some of the features that make APL interesting, along with a demo showing what it means to program in APL.
-
Ozma: Extending Scala with Oz Concurrency
Peter Van Roy discusses solving concurrency issues with deterministic concurrency using Ozma, an extension of the Scala language employing the Oz deterministic dataflow concepts.
-
Why is a Monad Like a Writing Desk?
Carin Meier tells the story of Alice discovering Monads, meeting three types of monads – Identity, Maybe, State-, and learning how to implement them in Clojure.
-
Objects, Anomalies, and Actors: The Next Revolution
Steve Vinoski believes that actor-oriented languages such as Erlang are better prepared for the challenges of the future: cloud, multicore, high availability and fault tolerance.
-
Polyglot Programming: The Power of Hybridization
Bruce Eckel emphasizes using different languages within a project, each one for the task it is better fitted for, and giving several such examples: Python+Scala, Go+Python, Python+CoffeeScript.
-
Play!: I’ll See Your Async and Raise You Reactive
Guillaume Bort and Sadek Drobi introduce Play, a Java and Scala web development framework, insisting on its asynchronous reactive capabilities built on Iteratee IO.