InfoQ Homepage Functional Programming Content on InfoQ
-
Extreme Cleverness: Functional Data Structures in Scala
Daniel Spiewak shows how to create immutable data that supports structural sharing, such as: Singly-linked List, Banker’s Queue, 2-3 Finger Tree, Red-Black Tree, Patricia Trie, Bitmapped Vector Trie.
-
Running a Startup on Haskell
Bryan O'Sullivan presents a case study of a small startup that chose Haskell for its server-side code, outlining the advantages and disadvantages of using Haskell to quickly create a solid solution.
-
Let It Crash ... Except When You Shouldn't
Steve Vinoski explains how to avoid some of the Erlang errors that can bring down a system starting from the premise that not all the crashes are welcome as the “Let It Crash” philosophy might suggest
-
Membase NoSQL: Clustered by Erlang
Sean Lynch and Matt Ingenthron introduce Membase, detailing how they added clustering features in Erlang, what they built and what lessons they leaned along the way.
-
Clojure: Towards The Essence Of Programming
Howard Lewis Ship talks about Clojure, a language more concise, testable, and readable than Java, letting the developer to focus on his work rather than a verbose syntax.
-
Beam.js: Erlang Meets JavaScript
Yurii Rashkovskii presents Beam.js, a JavaScript platform built on erlv8 and providing bi-directional integration with Erlang.
-
Clojure: The Art of Abstraction
Alex Miller presents some of the abstractions that make Clojure a great language: Collections, Sequence and Higher Order Functions, Multimethods, Protocols, Atoms, Macros, and others.
-
Building Solid Distributed Applications with Haskell and Riak
Bryan O'Sullivan discusses the design considerations and types usage when building distributed systems with Haskell and Riak, starting from a case study of a system using vector clocks.
-
A True Conversational Web
Robert Virding discusses conversational web services and how Erlang can provide the necessary tools to write 2-way conversational applications using WebSockets.
-
ECC - Fun Writing Compilers
Joe Armstrong presents ECC, an optimizing compiler running on LLVM for writing C compilers for unusual architectures, for implementing DSLs and for experiments with JIT compilation.
-
Actor-based Programming
Jamie Ridgway explains what actors are, why we need them, what they are helpful for, the languages built around this programming paradigm, along with some demos showing actor-based apps.
-
Building Polyglot Distributed Systems With JInterface
Cliff Moon shows how to create a polyglot distributed application by integrating Scala with Erlang through JInterface, a library designed for JVM-based languages to communicate with Erlang processes.