Posts Tagged ‘functional programming’

Paper on Multicore Programming in Haskell – A. Al Zain, P. Trinder, M. Aswad, G. Michaelson, K. Hammond and J. Berthold

A. Al Zain, P. Trinder, M. Aswad, G. Michaelson, K. Hammond and J. Berthold “Low-Pain, High-Gain Multicore Programming in Haskell: Coordinating Irregular Symbolic Computations on MultiCore Architectures” – http://www.macs.hw.ac.uk/~greg/publications/

Tags: ,

Functional Prgoramming Software Testing – videos

Type-driven testing in Haskell – Simon Peyton Jones http://video.google.com/videoplay?docid=-4991530385753299192

Simon Peyton Jones talks about QuickCheck and SmallCheck.

FP A Secret Weapon for Software Testing – John Hughes http://video.google.com/videoplay?docid=4655369445141008672

John Hughes gives an invited talk at ICFP 2007 in Freiburg, Germany, showing from his company’s experience how QuickCheck has found many obscure bugs in commercial software. *Even when the software under test is not written in a functional language.

Tags:

GPU Kernels as Data-Parallel Array Computations in Haskell

This paper provides a brief overview of  approach to GPU programming with Haskell by embedding GPU kernels with a domain-specific language of data-parallel array computations in Haskell code. The paper also presents some preliminary benchmarks.

We present a novel high-level parallel programming model aimed at graphics processing units (GPUs). We embed GPU kernels as data-parallel array computations in the purely functional language Haskell. GPU and CPU computations can be freely interleaved with the type system tracking the two different modes of computation. The embedded language of array computations is sufficiently limited that our system can automatically extract these computations and compile them to efficient GPU code. In this paper, we outline our approach and present the results of a few preliminary benchmarks.



http://www.cse.unsw.edu.au/~chak/papers/LCGK09.html

Tags: , ,

Simon Peyton Jones – A Tutorial on Parallel and Concurrent Programming in Haskell

Simon Peyton Jones and Satnam Singh, Advanced Functional Progamming Summer School, Nijmegen, May 2008, LNCS

This practical tutorial introduces the features available in Haskell for writing parallel and concurrent programs. We first describe how to write semi-explicit parallel programs by using annotations to express opportunities for parallelism and to help control the granularity of parallelism for effective execution on modern operating systems and processors. We then describe the mechanisms provided by Haskell for writing explicitly parallel programs with a focus on the use of software transactional memory to help share information between threads. Finally, we show how nested data parallelism can be used to write deterministically parallel programs which allows programmers to use rich data types in data parallel programs which are automatically transformed into flat data parallel versions for efficient execution on multi-core processors.

http://research.microsoft.com/en-us/um/people/simonpj/papers/parallel/index.htm

Tags: ,

F# to ship as part of Visual Studio 2010

Microsoft had begun investing in F# as one of Microsoft’s supported languages on the .NET platform. Result of this investment: F# will ship as part of Visual Studio 2010! Don Syme attempted to answer some questions regarding the F# future: http://blogs.msdn.com/dsyme/archive/2008/12/10/fsharp-to-ship-as-part-of-visual-studio-2010.aspx

Tags: ,

Don Stewart on Multicores with Haskell

Don Stewart (Galois) is presenting paper: “Beautiful Parallelism: Harnessing Multicores with Haskell” on SC’08 in Austin.

Slides: http://sites.google.com/site/sc08mcoregap/Home/sc08mcoregap-presentations

Program:

SC’08 Workshop: Bridging Multicore’s Programmability Gap

Tags: ,