BT
Older Newer rss

Actor Thinking

Posted by Dale Schumacher  on  Apr 14, 2011 2

Dale Schumacher explains the actor concept and how it helps us build a computational model resembling the reality around us more accurately than the object-oriented model.

Parallel Programming Patterns: Data Parallelism

Posted by Ralph Johnson  on  Apr 01, 2011 3

Ralph Johnson presents several data parallelism patterns, including related Java, C# and C++ libraries from Intel and Microsoft, comparing it with other forms of parallelism such as actor programming.

Parallel Programming Patterns: Data Parallelism

Posted by Ralph Johnson  on  Feb 04, 2011 1

Ralph Johnson presents several data parallelism patterns, including related libraries from Intel and Microsoft, comparing it with other forms of parallel programming such as actor programming.

How to Think about Parallel Programming: Not!

Posted by Guy Steele  on  Jan 14, 2011 2

Guy L. Steele Jr. believes that it should not be the programmer’s job to think about parallelism, but languages should provide ways to transparently run tasks in parallel. This requires a new approach in building languages supporting algorithms built on independence and build-and-conquer principles rather than on linear decomposition of problems.

Panel: The Future of Programming Languages

Posted by Guy Steele, Douglas Crockford, Josh Bloch, Alex Payne, Bruce Tate, and Ted Neward  on  Nov 24, 2010 8

Guy Steele, Douglas Crockford, Josh Bloch, Alex Payne, Bruce Tate, and Ted Neward (moderator) hold a discussion on the future of programming. Topics included: the future beyond functional, running JVM/CLR on many cores, what is the future of type checking and type systems, languages for education, comparing DSLs and ubiquitous languages, proving code correctness, functional and parallelism.

Functional Approaches To Parallelism and Concurrency

Posted by Don Syme  on  Oct 20, 2010

Don Syme overviews some of the basic features of functional languages, presenting why and when they are useful for parallel programming: simplicity, composability, immutability, lightweight reaction, translations, data parallelism, using F# examples but addressing the larger spectrum of functional languages including Haskell, Erlang, Clojure and JavaScript.

Death by Accidental Complexity

Posted by Ulf Wiger  on  Jul 29, 2010 1

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 in order to avoid complexity.

Multicore Programming in Haskell

Posted by Simon Marlow  on  Jul 14, 2010 5

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 parallel programming.

A Pattern Language for Parallel Programming

Posted by Ralph Johnson  on  May 07, 2010

Ralph Johnson presents a pattern language that he and his colleagues are working on in an attempt to solve the hard issues of parallel programming through a set of design patterns: Structural Patterns, Computational Patterns, Parallel Algorithm Strategy Patterns, Implementation Strategy Patterns, and Concurrent Execution Patterns.

Are We There Yet?

Posted by Rich Hickey  on  Nov 12, 2009 6

In his keynote at JVM Languages Summit 2009, Rich Hickey advocated for the reexamination of basic principles like state, identity, value, time, types, genericity, complexity, as they are used by OOP today, to be able to create the new constructs and languages to deal with the massive parallelism and concurrency of the future.

Multicore Programming in Erlang

Posted by Ulf Wiger  on  Jul 16, 2009

Ulf Wiger shows typical Erlang programs, patterns that scale well on multicore and patterns that don't, profiling and debugging parallel applications and ensuring correct behaviour with QuickCheck.

From Concurrent to Parallel

Posted by Brian Goetz  on  Jun 19, 2009 3

Multiprocessor systems have gone from being rare and expensive to being ubiquitous. As the hardware reality changes, so do the programs we want to write and so must the platform and libraries we rely on. In Java SE 7, the java.util.concurent package will grow to address the need to exploit finer-grained concurrency, in the form of the fork-join framework.

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT