InfoQ Homepage Parallel Programming Content on InfoQ
-
Rick Hudson on Parallel JavaScript (RiverTrail)
In this interview, Intel's Rick Hudson talks about Parallel JavaScript (formerly known as "RiverTrail"), a new parallel programming API designed specifically for JavaScript. Rick describes RiverTrail and its vision of how to leverage current and future parallel hardware from within the browser and JavaScript.
-
Viktor Klang on Akka, Futures and Promises, Scala
Viktor Klang talks about the features of Akka 2.x and future releases, Akka's approach to fault tolerance, the effort to unify Futures in Scala, and the state of functional programming.
-
James Spooner on Data Flow Parallelism and Hardware Acceleration
James Spooner explains how Data Flow Parallelism works and how it helps to design efficient parallel algorithms. Also: OOP vs. Parallelism.
-
John Nolan on the State of Hardware Acceleration with GPUs/FPGAs, Parallel Algorithm Design
John Nolan shows the state of hardware acceleration with GPUs and FPGAs, why it's hard to write efficient code for them, and why to favor polymorphism over if statements for performance.
-
Mike Williams on the History of Erlang, Modeling and Large Scale Design
Mike Williams, co-creator of Erlang discusses the history of and influences on Erlang as well as languages and paradigms used at Ericsson for large scale development and embedded programming.
-
Kostis Sagonas on Erlang, Types, Static Analysis and Refactoring
Kostis Sagons talks about how type checking can help with a dynamic language like Erlang and how static analysis tools like Dialyzer or automated refactoring tools like Tidier help keep code clean.
-
Ville Tuulos on Big Data and Map/Reduce in Erlang and Python with Disco
Ville Tuulos talks about Disco, the Map/Reduce framework for Python and Erlang, real-world data mining with Python, the advantages of Erlang for distributed and fault tolerant software, and more.
-
Contrasting Haskell & Erlang in peer-to-peer protocol implementation
Based on his experience of writing BitTorrent clients - Combinatorrent and Etorrent – in Haskell and Erlang respectively, Jesper Louis Andersen presents the advantages of using these languages as well as the challenges that he encountered. He details how did he exploit the elegance of each of these two languages to leverage robust concurrency based on message-passing.
-
Rob Pike on Google Go: Concurrency, Type System, Memory Management and GC
Rob Pike discusses Google Go: OOP programming without classes, Go interfaces, Concurrency with Goroutines and Channels, and the Go features that help keep GC pauses short.
-
Rob Pike on Parallelism and Concurrency in Programming Languages
Rob Pike discusses concurrency in programming languages: CSP, channels, the role of coroutines, Plan 9, MapReduce and Sawzall, processes vs threads in Unix, and more programming language history.
-
Cliff Click on Azul's Pauseless GC, Zing, JVM Languages
Cliff Click discusses the Pauseless GC algorithm and how Azul's Zing implements it on plain x86 CPUs. Also: what keeps dynamic languages slow on the JVM, invokedynamic, concurrency and much more.
-
Chris Houser Discusses Clojure
In this interview Ryan discusses Clojure with author Chris Houser. They cover Clojure's approach to classes, comparing and contrasting it with Java. Chris delves into they type of programming problem sets Clojure is best suited for, especially in relation to parallelism as the number of cores in computers increases and Clojure's applicability as or research language.