InfoQ Homepage Functional Programming Content on InfoQ
-
The Joy of Testing
John Hughes shows how to explore the bugs of a code by creating a series of tests in Erlang and using multiple test frameworks, discovering the faults and evaluating the frameworks while doing it.
-
Death by Accidental Complexity
Ulf Wiger shows how concurrency can lead to accidental complexity if it is badly implemented in code, becoming a project’s point of failure. Wiger also advises on how concurrency should be addressed.
-
Multicore Programming in Haskell
Simon Marlow explains through code samples what Haskell has to offer for concurrent programming through concurrent data structures and thread-based concurrency, and Haskell’s tools for parallelism.
-
Groovy: Best Practices Developed From Distributed Polyglot Programming
Jonathan Felch discusses Groovy, its major features, using it in a financial project, the benefit of using dynamic and meta-programming features together, ending with what is not so great in Groovy.
-
Towards a Universal VM
Alex Buckley presents some of the challenges for JVM to become a universal VM, serving the needs of Java and non-Java languages, static and dynamic languages, and an ever growing number of features.
-
Message Passing Concurrency in Erlang
Joe Armstrong explains through Erlang examples that message passage concurrency represents the foundation of scalable fault-tolerant systems.
-
Absorbing Scala in the Java Ecosystem
Eishay Smith presents the main differences between Scala and Java, explaining how the Java developers can start integrate Scala code into their development, building, testing and runtime environments.
-
Clojure in the Field
Stuart Halloway on Clojure development including BDD for functional code, wrapping Java APIs, third part libraries worth knowing, writing code without an objectual context, and the learning curve.
-
Horizontal Scalability via Transient, Shardable, and Share-Nothing Resources
Adam Wiggins details how memcached, CouchDB, Hadoop, Redis, Varnish, RabbitMQ, Erlang apply the transient, shardable and share-nothing principles to achieve horizontal scalability.
-
Pragmatic F# in Action
Amanda Laucher and Josh Graham introduce the audience to F# basics showing some of its main features, emphasizing what makes it better than imperative languages, and also showing F# code samples.
-
RPC and its Offspring: Convenient, Yet Fundamentally Flawed
Steve Vinoski covers the history of RPC, standardization, distributed objects, CORBA, DCOM, Java, SOAP, WS-*, flaws in RPC, REST vs RPC philosophy, Erlang reliability and concurrency.
-
Scala Basics - Byte-code Fancypants
David Pollak makes an introduction to Scala showing how basic language constructs like boxing, generics, structural types, tail calls, and others, are used and how they are translated into byte code.