Filters








2,427 Hits in 7.1 sec

Runtime support for multicore Haskell

Simon Marlow, Simon Peyton Jones, Satnam Singh
2009 Proceedings of the 14th ACM SIGPLAN international conference on Functional programming - ICFP '09  
Purely functional programs should run well on parallel hardware because of the absence of side effects, but it has proved hard to realise this potential in practice.  ...  Acknowledgments We wish to thank Jost Berthold, who helped us identify some of the bottlenecks in the parallel runtime implementation, and built the first implementation of work-stealing queues for spark  ...  The HEC is a data structure that contains all the data that an OS worker thread requires in order to execute Haskell threads.  ... 
doi:10.1145/1596550.1596563 dblp:conf/icfp/MarlowJS09 fatcat:v75g6hyxprgs7ghuz67x7ovjti

Runtime support for multicore Haskell

Simon Marlow, Simon Peyton Jones, Satnam Singh
2009 SIGPLAN notices  
Purely functional programs should run well on parallel hardware because of the absence of side effects, but it has proved hard to realise this potential in practice.  ...  Acknowledgments We wish to thank Jost Berthold, who helped us identify some of the bottlenecks in the parallel runtime implementation, and built the first implementation of work-stealing queues for spark  ...  The HEC is a data structure that contains all the data that an OS worker thread requires in order to execute Haskell threads.  ... 
doi:10.1145/1631687.1596563 fatcat:muzudu457zamhmdwu2himoop3u

Composable scheduler activations for Haskell

K. C. SIVARAMAKRISHNAN, TIM HARRIS, SIMON MARLOW, SIMON PEYTON JONES
2016 Journal of functional programming  
In this paper, we describe a novel concurrency substrate design for the Glasgow Haskell Compiler that allows multicore schedulers for concurrent and parallel Haskell programs to be safely and modularly  ...  AbstractThe runtime for a modern, concurrent, garbage collected language like Java or Haskell is like an operating system: sophisticated, complex, performant, but alas very hard to change.  ...  As for the implementation, we would like to explore the effectiveness of user-level gang scheduling for Data Parallel Haskell (Chakravarty et al., 2007) workloads, and priority scheduling for Haskell  ... 
doi:10.1017/s0956796816000071 fatcat:w6zdte5jybamjhyii64lq6wtl4

A history of Haskell

Paul Hudak, John Hughes, Simon Peyton Jones, Philip Wadler
2007 Proceedings of the third ACM SIGPLAN conference on History of programming languages - HOPL III  
The members of the Haskell Committee played a particularly important role, however.  ...  The other was a data-binding approach (implemented as a pre-processor) that mapped XML data onto Haskell data structures, and vice-versa.  ...  98 Report.  ... 
doi:10.1145/1238844.1238856 dblp:conf/hopl/HudakHJW07 fatcat:7i7s3ivrkzhotgoyvjnxcjglxu

Nested data-parallelism on the gpu

Lars Bergstrom, John Reppy
2012 Proceedings of the 17th ACM SIGPLAN international conference on Functional programming - ICFP '12  
NESL is a first-order functional language that was designed to allow programmers to write irregular-parallel programs -such as parallel divide-and-conquer algorithms -for wide-vector parallel computers  ...  Most of the programs ported to GPUs thus far use traditional data-level parallelism, performing only operations that operate uniformly over vectors.  ...  Acknowledgments Ben Lippmeier provided help understanding the benchmark results and current status of Data Parallel Haskell.  ... 
doi:10.1145/2364527.2364563 dblp:conf/icfp/BergstromR12 fatcat:caeanju54jcrhlv432d56pwvs4

Accelerating Haskell array codes with multicore GPUs

Manuel M.T. Chakravarty, Gabriele Keller, Sean Lee, Trevor L. McDonell, Vinod Grover
2011 Proceedings of the sixth workshop on Declarative aspects of multicore programming - DAMP '11  
Current GPUs are massively parallel multicore processors optimised for workloads with a large degree of SIMD parallelism.  ...  This paper outlines our embedding in Haskell, details the design and implementation of the dynamic code generator, and reports on initial benchmark results.  ...  McDonell was supported by an Australian Postgraduate Award (APA) and a NICTA supplementary award.  ... 
doi:10.1145/1926354.1926358 dblp:conf/popl/ChakravartyKLMG11 fatcat:nc73etjhxjgohaieyh4y2yd6zu

Nested data-parallelism on the gpu

Lars Bergstrom, John Reppy
2012 SIGPLAN notices  
NESL is a first-order functional language that was designed to allow programmers to write irregular-parallel programs -such as parallel divide-and-conquer algorithms -for wide-vector parallel computers  ...  Most of the programs ported to GPUs thus far use traditional data-level parallelism, performing only operations that operate uniformly over vectors.  ...  Acknowledgments Ben Lippmeier provided help understanding the benchmark results and current status of Data Parallel Haskell.  ... 
doi:10.1145/2398856.2364563 fatcat:qykmre6bmzdexoq2lxkhseweka

The Intel labs Haskell research compiler

Hai Liu, Neal Glew, Leaf Petersen, Todd A. Anderson
2013 Proceedings of the 2013 ACM SIGPLAN symposium on Haskell - Haskell '13  
The Glasgow Haskell Compiler (GHC) is a well supported optimizing compiler for the Haskell programming language, along with its own extensions to the language and libraries.  ...  The Intel Labs Haskell Research Compiler uses GHC as a frontend, but provides a new whole-program optimizing backend by compiling the GHC intermediate representation to a relatively generic functional  ...  This paper reports on an ongoing effort to compile Haskell by using GHC as a frontend to an existing functional language compiler built at Intel Labs that is largely language agnostic.  ... 
doi:10.1145/2503778.2503779 dblp:conf/haskell/LiuGPA13 fatcat:ri6z6z6j4zfv7depadske6rke4

Déjà fu: a concurrency testing library for haskell

Michael Walker, Colin Runciman
2015 Proceedings of the 8th ACM SIGPLAN Symposium on Haskell - Haskell 2015  
It seems to have received little attention from Haskell programmers.  ...  This paper introduces a generalisation of Haskell's concurrency abstraction in the form of typeclasses, and a library for testing concurrent programs.  ...  The Par Monad As mentioned in Section §2.2, the Par monad allows for deterministic data-flow parallelism in Haskell.  ... 
doi:10.1145/2804302.2804306 dblp:conf/haskell/WalkerR15 fatcat:iuyacokc4bhyrjwtwps7cloxmu

A Tutorial on Parallel and Concurrent Programming in Haskell [chapter]

Simon Peyton Jones, Satnam Singh
2009 Lecture Notes in Computer Science  
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  ...  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.  ...  Data Parallel Haskell is an ongoing research project [11]. The Manticore project at Chicago shares similar goals [20] .  ... 
doi:10.1007/978-3-642-04652-0_6 fatcat:jw2rtmej2jbvhf6yqwg4thv2cu

Déjà Fu: a concurrency testing library for Haskell

Michael Walker, Colin Runciman
2015 SIGPLAN notices  
It seems to have received little attention from Haskell programmers.  ...  This paper introduces a generalisation of Haskell's concurrency abstraction in the form of typeclasses, and a library for testing concurrent programs.  ...  The Par Monad As mentioned in Section §2.2, the Par monad allows for deterministic data-flow parallelism in Haskell.  ... 
doi:10.1145/2887747.2804306 fatcat:rztituni65gpliponpdqqmmpqi

A Simple Parallel Implementation of Interaction Nets in Haskell

Wolfram Kahl
2015 Electronic Proceedings in Theoretical Computer Science  
We show that a simple highly-concurrent implementation in Haskell can achieve promising speed-ups on multiple cores.  ...  Due to their "inherent parallelism", interaction nets have since their introduction been considered as an attractive implementation mechanism for functional programming.  ...  In this paper, we report on an experiment that bypasses the question of distribution strategies, and instead investigates whether a fine-grained threading mechanism with parallel execution on shared-memory  ... 
doi:10.4204/eptcs.179.3 fatcat:u7lzt5ucz5bm3dy6xdhfkeojna

Libraries for Generic Programming in Haskell [chapter]

Johan Jeuring, Sean Leather, José Pedro Magalhães, Alexey Rodriguez Yakushev
2009 Lecture Notes in Computer Science  
These lecture notes introduce libraries for datatype-generic programming in Haskell.  ...  In the case studies for the different libraries we introduce generic components of a medium-sized application which assists a student in solving mathematical exercises.  ...  Haskell offers a powerful construct for defining datatypes: data. Haskell also offers two other constructs: type to introduce type synonyms and newtype, a restricted version of data.  ... 
doi:10.1007/978-3-642-04652-0_4 fatcat:wf35im45g5akvc3frcqtqk67ra

A specification for dependent types in Haskell

Stephanie Weirich, Antoine Voizard, Pedro Henrique Azevedo de Amorim, Richard A. Eisenberg
2017 Proceedings of the ACM on Programming Languages  
We propose a core semantics for Dependent Haskell, an extension of Haskell with full-spectrum dependent types. Our semantics consists of two related languages.  ...  The first is a Curry-style dependently-typed language with nontermination, irrelevant arguments, and equality abstraction.  ...  functions are not applicable to type-level data.  ... 
doi:10.1145/3110275 dblp:journals/pacmpl/WeirichVAE17 fatcat:nbjaoyjzdjfq7mxahlytmcbkjy

Dependent Types in Haskell: Theory and Practice [article]

Richard A. Eisenberg
2017 arXiv   pre-print
This dissertation contains several practical examples of Dependent Haskell code, a full description of the differences between Dependent Haskell and today's Haskell, a novel type-safe dependently typed  ...  In this dissertation, I describe Dependent Haskell, which supports full dependent types via a backward-compatible extension to today's Haskell.  ...  on the status of the Either .  ... 
arXiv:1610.07978v2 fatcat:a4emu7gcqfddznq4wbjf4mvhym
« Previous Showing results 1 — 15 out of 2,427 results