English
Related papers

Related papers: Destination-passing style programming: a Haskell i…

200 papers

Scientific progress increasingly depends on data management, particularly to clean and curate data so that it can be systematically analyzed and reused. A wealth of techniques for managing and curating data (and its provenance) have been…

Programming Languages · Computer Science 2018-03-28 Jan Stolarek , James Cheney

The inability to relocate objects in unmanaged languages brings with it a menagerie of problems. Perhaps the most impactful is memory fragmentation, which has long plagued applications such as databases and web servers. These issues either…

Programming Languages · Computer Science 2024-05-02 Nick Wanninger , Tommy McMichen , Simone Campanoni , Peter Dinda

Many performance critical systems today must rely on performance enhancements, such as multi-port memories, to keep up with the increasing demand of memory-access capacity. However, the large area footprints and complexity of existing…

Hardware Architecture · Computer Science 2020-01-28 Hardik Jain , Matthew Edwards , Ethan Elenberg , Ankit Singh Rawat , Sriram Vishwanath

Racetrack memory is a new technology which utilizes magnetic domains along a nanoscopic wire in order to obtain extremely high storage density. In racetrack memory, each magnetic domain can store a single bit of information, which can be…

Information Theory · Computer Science 2017-01-25 Yeow Meng Chee , Han Mao Kiah , Alexander Vardy , Van Khu Vu , Eitan Yaakobi

Obtaining good performance when programming heterogeneous computing platforms poses significant challenges for the programmer. We present a program transformation environment, implemented in Haskell, where architecture-agnostic scientific C…

Programming Languages · Computer Science 2016-03-11 Salvador Tamarit , Julio Mariño , Guillermo Vigueras , Manuel Carro

Deep declarative networks and other recent related works have shown how to differentiate the solution map of a (continuous) parametrized optimization problem, opening up the possibility of embedding mathematical optimization problems into…

Machine Learning · Computer Science 2022-02-28 Stephen Gould , Dylan Campbell , Itzik Ben-Shabat , Chamin Hewa Koneputugodage , Zhiwei Xu

We exhibit assertion-preserving (reachability preserving) transformations from parameterized concurrent shared-memory programs, under a k-round scheduling of processes, to sequential programs. The salient feature of the sequential program…

Logic in Computer Science · Computer Science 2012-07-19 Salvatore La Torre , P. Madhusudan , Gennaro Parlato

In the paper a new programming construct, called concept, is introduced. Concept is pair of two classes: a reference class and an object class. Instances of the reference classes are passed-by-value and are intended to represent objects.…

Programming Languages · Computer Science 2008-01-03 Alexandr Savinov

Haskell is a popular choice for hosting deeply embedded languages. A recurring challenge for these embeddings is how to seamlessly integrate user defined algebraic data types. In particular, one important, convenient, and expressive feature…

Programming Languages · Computer Science 2022-08-01 Trevor L. McDonell , Joshua D. Meredith , Gabriele Keller

We propose a novel notion of pointer race for concurrent programs manipulating a shared heap. A pointer race is an access to a memory address which was freed, and it is out of the accessor's control whether or not the cell has been…

Programming Languages · Computer Science 2015-11-12 Frédéric Haziza , Lukáš Holík , Roland Meyer , Sebastian Wolff

Choreographic programming is an emerging paradigm for programming distributed systems. In choreographic programming, the programmer describes the behavior of the entire system as a single, unified program -- a choreography -- which is then…

Programming Languages · Computer Science 2023-07-21 Gan Shen , Shun Kashiwa , Lindsey Kuper

Obtaining good performance when programming heterogeneous computing platforms poses significant challenges. We present a program transformation environment, implemented in Haskell, where architecture-agnostic scientific C code with semantic…

Programming Languages · Computer Science 2017-01-13 Salvador Tamarit , Julio Mariño , Guillermo Vigueras , Manuel Carro

In the modern transportation industry, accurate prediction of travelers' next destinations brings multiple benefits to companies, such as customer satisfaction and targeted marketing. This study focuses on developing a precise model that…

Machine Learning · Computer Science 2024-09-17 Salih Salihoglu , Gulser Koksal , Orhan Abar

Current causally consistent data storage algorithms use partial or full replication to ensure data access to clients over a distributed setting. We develop, for the first time, an erasure coding-based algorithm called CausalEC that ensures…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-05-23 Viveck R. Cadambe , Shihang Lyu

Traditionally, semantic models of imperative languages use an auxiliary structure which mimics memory. In this way, ownership and other encapsulation properties need to be reconstructed from the graph structure of such global memory. We…

Programming Languages · Computer Science 2019-04-24 Paola Giannini , Marco Servetto , Elena Zucca

Recent work showed that compiling functional programs to use dense, serialized memory representations for recursive algebraic datatypes can yield significant constant-factor speedups for sequential programs. But serializing data in a…

Programming Languages · Computer Science 2021-07-02 Chaitanya Koparkar , Mike Rainey , Michael Vollmer , Milind Kulkarni , Ryan R. Newton

A zipper is a powerful technique of representing a purely functional data structure in a way that allows fast access to a specific element. It is often used in cases where the imperative data structures would use a mutable pointer. However,…

Programming Languages · Computer Science 2019-08-30 Vít Šefl

In this work, we study a recently proposed direct shaping code for flash memory. This rate-1 code is designed to reduce the wear for SLC (one bit per cell) flash by minimizing the average fraction of programmed cells when storing structured…

Information Theory · Computer Science 2020-07-14 Yi Liu , Paul H. Siegel

We introduce the Rebound library that supports well-scoped term representations in Haskell and automates the definition of substitution, alpha-equivalence, and other operations that work with binding structures. The key idea of our design…

Programming Languages · Computer Science 2025-09-17 Noé De Santo , Stephanie Weirich

The work presented in this thesis seeks to improve programmer productivity in the following ways: - by reducing the amount of code that has to be written to construct an application; - by increasing the reliability of the code written; and…

Programming Languages · Computer Science 2010-06-18 Graham Kirby