Filters








1,576 Hits in 3.7 sec

Composable scheduler activations for Haskell

K. C. SIVARAMAKRISHNAN, TIM HARRIS, SIMON MARLOW, SIMON PEYTON JONES
2016 Journal of functional programming  
The approach relies on abstracting the interface to the user-implemented schedulers through scheduler activations, together with the use of Software Transactional Memory to promote safety in a multicore  ...  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  ...  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

HLogo: A Parallel Haskell Variant of NetLogo

Nikolaos Bezirgiannis, I. S. W. B. Prasetya, Ilias Sakellariou
2016 Proceedings of the 6th International Conference on Simulation and Modeling Methodologies, Technologies and Applications  
HLogo is implemented as a Domain Specific Language embedded in the functional language Haskell, which means that it also inherits Haskell's features, such as its static typing.  ...  the user friendliness of NetLogo.  ...  All the benchmarks in this work were carried out on the Dutch national HPC e-infrastructure, kindly provided by the SURF Foundation (http://surf.nl).  ... 
doi:10.5220/0005983501190128 dblp:conf/simultech/BezirgiannisPS16 fatcat:opxdqfxo6nb5vg3o4fxy4kl7x4

An implementation and semantics for transactional memory introspection in Haskell

Arnar Birgisson, Úlfar Erlingsson
2009 Proceedings of the ACM SIGPLAN Fourth Workshop on Programming Languages and Analysis for Security - PLAS '09  
In this paper we present a formal definition of TMI and a concrete implementation over the Haskell STM.  ...  In particular, they help identify and resolve ambiguities that apply to implementations such in our prior work [Birgisson et al. 2008 ].  ...  We also thank Wouter Swierstra and Josef Svenningsson for their detailed comments on our Haskell code.  ... 
doi:10.1145/1554339.1554350 dblp:conf/pldi/BirgissonE09 fatcat:gv4xhlnzajcmzpluxzd4hc7xae

PhD Abstracts

GRAHAM HUTTON
2020 Journal of functional programming  
Many students complete PhDs in functional programming each year.  ...  As a service to the community, twice per year the Journal of Functional Programming publishes the abstracts from PhD dissertations completed during the previous year.  ...  Early in the evolution of transactional memory (TM), Haskell included language support and quickly grew a community of TM users.  ... 
doi:10.1017/s0956796819000200 fatcat:rsyetan23fgzzhrg7vlk3h2frm

Taking the heat off transactions: Dynamic selection of pessimistic concurrency control

Nehir Sonmez, Tim Harris, Adrian Cristal, Osman S. Unsal, Mateo Valero
2009 2009 IEEE International Symposium on Parallel & Distributed Processing  
We describe our implementation in the Haskell programming language, and examine its performance with a range of micro-benchmarks and larger programs.  ...  This trades off a reduction in single-threaded speed (since pessimistic concurrency control is not as streamlined as our optimistic implementation), against a reduced amount of wasted work in aborted transactions  ...  Haskell STM Operations User-mode scheduling in Haskell. Haskell threads are scheduled in user-mode over a pool of OS threads.  ... 
doi:10.1109/ipdps.2009.5161032 dblp:conf/ipps/SonmezHCUV09 fatcat:r72sdhaggzcpbikhmdonnp6xnq

Marlowe: Implementing and Analysing Financial Contracts on Blockchain [chapter]

Pablo Lamela Seijas, Alexander Nemish, David Smith, Simon Thompson
2020 Lecture Notes in Computer Science  
Contracts in Marlowe can be exhaustively analysed prior to running them, thus providing strong guarantees to participants in the contract.  ...  Two reasons for doing this are: -There is a shallower learning curve for users who are new to Haskell or programming languages in general.  ...  SBV Library SBV [7] (SMT Based Verification) library provides a high-level API that allows developers to automatically prove properties about Haskell programs, among other functionalities.  ... 
doi:10.1007/978-3-030-54455-3_35 fatcat:bw3w6lqotze33ovn74vfmtezpi

PhD Abstracts

GRAHAM HUTTON
2022 Journal of functional programming  
Many students complete PhDs in functional programming each year.  ...  A dissertation is eligible for inclusion if parts of it have or could have appeared in JFP, that is, if it is in the general area of functional programming. The abstracts are not reviewed.  ...  Despite this, the adoption into mainstream high-level languages such as Haskell, Scala and OCaml has been very slow.  ... 
doi:10.1017/s0956796821000290 fatcat:zomws6ia5na3rhgsscvo6lovl4

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

Simon Peyton Jones, Satnam Singh
2009 Lecture Notes in Computer Science  
This practical tutorial introduces the features available in Haskell for writing parallel and concurrent programs.  ...  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

Combining events and threads for scalable network services implementation and evaluation of monadic, application-level concurrency primitives

Peng Li, Steve Zdancewic
2007 SIGPLAN notices  
The Haskell implementation supports exceptions, symmetrical multiprocessing, software transactional memory, asynchronous I/O mechanisms and application-level network protocol stacks.  ...  The Haskell implementation supports exceptions, symmetrical multiprocessing, software transactional memory, asynchronous I/O mechanisms and application-level network protocol stacks.  ...  In addition, we would like to thank the PLDI reviewers for their valuable comments and extensive proofreading of the original draft. This work is supported by NSF grant CCF-0541040.  ... 
doi:10.1145/1273442.1250756 fatcat:rznvhyqnf5blzki42yggppjqru

Combining events and threads for scalable network services implementation and evaluation of monadic, application-level concurrency primitives

Peng Li, Steve Zdancewic
2007 Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation - PLDI '07  
The Haskell implementation supports exceptions, symmetrical multiprocessing, software transactional memory, asynchronous I/O mechanisms and application-level network protocol stacks.  ...  The Haskell implementation supports exceptions, symmetrical multiprocessing, software transactional memory, asynchronous I/O mechanisms and application-level network protocol stacks.  ...  In addition, we would like to thank the PLDI reviewers for their valuable comments and extensive proofreading of the original draft. This work is supported by NSF grant CCF-0541040.  ... 
doi:10.1145/1250734.1250756 dblp:conf/pldi/LiZ07 fatcat:i4llijobbfdyhafhodhiiznfma

Type Safe Redis Queries: A Case Study of Type-Level Programming in Haskell [article]

Ting-Yan Lai Institute of Information Science, Academia Sinica, Taiwan)
2017 arXiv   pre-print
We develop a domain-specific language that, by exploiting Haskell type-level programming techniques including indexed monad, type-level literals and closed type families, keeps track of types of values  ...  Redis is an in-memory data structure store, often used as a database, with a Haskell interface Hedis.  ...  In H , the Haskell program is free to generate arbitrary sequence of keys to be used in the data store, which is in general not possible due to the static nature of E . Transactions.  ... 
arXiv:1708.09158v1 fatcat:lxyl5wbycfgaldrfsmydojlpnm

Scalable software defined network controllers

Andreas Voellmy, Junchang Wang
2012 Proceedings of the ACM SIGCOMM 2012 conference on Applications, technologies, architectures, and protocols for computer communication - SIGCOMM '12  
Programmers extend Mc-Nettle by writing event handlers and background programs in a high-level functional programming language extended with shared state and memory transactions.  ...  We implement our framework in Haskell and leverage the multicore facilities of the Glasgow Haskell Compiler (GHC) and runtime system.  ...  , to Haskell standard libraries, and Haskell runtime system components.  ... 
doi:10.1145/2342356.2342414 dblp:conf/sigcomm/VoellmyW12 fatcat:f4gcsfs3lrfddcbrt6u3zbzgva

Lightweight concurrency primitives for GHC

Peng Li, Simon Marlow, Simon Peyton Jones, Andrew Tolmach
2007 Proceedings of the ACM SIGPLAN workshop on Haskell workshop - Haskell '07  
software libraries written in Haskell.  ...  The Glasgow Haskell Compiler (GHC) has quite sophisticated support for concurrency in its runtime system, which is written in lowlevel C code.  ...  Acknowledgments We would like to thank Tim Harris, Norman Ramsey and Olin Shivers for their warmhearted participation in discussing the new RTS design.  ... 
doi:10.1145/1291201.1291217 dblp:conf/haskell/LiMJT07 fatcat:3sztc6betreyreu6no5gvzcewq

Paradise

Lennart Augustsson, Howard Mansell, Ganesh Sittampalam
2008 Proceeding of the 13th ACM SIGPLAN international conference on Functional programming - ICFP '08  
Paradise is embedded in Haskell and makes heavy use of type-class based overloading, allowing the second stage to be compiled into a variety of backend platforms.  ...  Paradise has enabled us to begin moving away from implementation directly in monolithic Excel spreadsheets and towards a more modular and retargetable approach.  ...  Note that in general, the two-level nature of Paradise makes us somewhat decoupled from actual Haskell performance; only developers using Paradise run Haskell code, whereas the end users run what the Haskell  ... 
doi:10.1145/1411204.1411236 dblp:conf/icfp/AugustssonMS08 fatcat:abceehievnfi5pnyszvlxgqogq

Paradise

Lennart Augustsson, Howard Mansell, Ganesh Sittampalam
2008 SIGPLAN notices  
Paradise is embedded in Haskell and makes heavy use of type-class based overloading, allowing the second stage to be compiled into a variety of backend platforms.  ...  Paradise has enabled us to begin moving away from implementation directly in monolithic Excel spreadsheets and towards a more modular and retargetable approach.  ...  Note that in general, the two-level nature of Paradise makes us somewhat decoupled from actual Haskell performance; only developers using Paradise run Haskell code, whereas the end users run what the Haskell  ... 
doi:10.1145/1411203.1411236 fatcat:7ac5acd5jbf4dkxxwokyoww46m
« Previous Showing results 1 — 15 out of 1,576 results