English
Related papers

Related papers: Scala-gopher: CSP-style programming techniques wit…

200 papers

It is time-consuming and error-prone to implement inference procedures for each new probabilistic model. Probabilistic programming addresses this problem by allowing a user to specify the model and having a compiler automatically generate…

We present PolyChor$\lambda$, a language for higher-order functional \emph{choreographic programming} -- an emerging paradigm by which programmers write the desired cooperative behaviour of a system of communicating processes and then…

Programming Languages · Computer Science 2023-03-09 Eva Graversen , Andrew K. Hirsch , Fabrizio Montesi

Spatial dataflow architectures like the Cerebras Wafer-Scale Engine deliver exceptional performance in AI and scientific computing by distributing scratchpad memory across hundreds of thousands of processing elements (PEs). Yet programming…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-04-28 Lukas Gianinazzi , Tal Ben-Nun , Torsten Hoefler

One way to write fast programs is to explore the potential parallelism and take advantage of the high number of cores available in microprocessors. This can be achieved by manually specifying which code executes on which thread, by using…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-08-23 Alcides Fonseca , Raul Barbosa

We present a parallel implementation of Coalgebraic Logic Programming (CoALP) in the programming language Go. CoALP was initially introduced to reflect coalgebraic semantics of logic programming, with coalgebraic derivation algorithm…

Programming Languages · Computer Science 2013-12-20 Ekaterina Komendantskaya , Martin Schmidt , Jónathan Heras

The Isabelle proof assistant includes a small functional language, which allows users to write and reason about programs. So far, these programs could be extracted into a number of functional languages: Standard ML, OCaml, Scala, and…

Programming Languages · Computer Science 2024-09-20 Terru Stübinger , Lars Hupel

Interoperability is the ability of a programming language to work with systems based on different languages and paradigms. These days, many widely used high-level language impementations provide access to external functionalities. In this…

Programming Languages · Computer Science 2017-03-16 Manuel Mazzara

Design of next generation computer systems should be supported by simulation infrastructure that must achieve a few contradictory goals such as fast execution time, high accuracy, and enough flexibility to allow comparison between large…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-04-02 Ori Chalak , Cai Weiguang , Li Wei , Fang Lei , Zheng Libing , Wang Jintang , Wu Zuguang , Gu Xiongli , Wang Haibin , Avi Mendelson

Process algebras have been widely used to verify security protocols in a formal manner. However they mostly focus on synchronous communication based on the exchange of messages. We present an alternative approach relying on asynchronous…

Programming Languages · Computer Science 2024-12-12 Doha Ouardi , Manel Barkallah , Jean-Marie Jacquet

Graph database systems are increasingly adapted for storing and processing heterogeneous network-like datasets. However, due to the novelty of such systems, no standard data model or query language has yet emerged. Consequently, migrating…

Databases · Computer Science 2017-09-25 József Marton , Gábor Szárnyas , Dániel Varró

The CSA group at the University of Amsterdam has developed SVP, a framework to manage and program many-core and hardware multithreaded processors. In this article, we introduce the intermediate language SL, a common vehicle to program SVP…

Programming Languages · Computer Science 2015-03-20 Raphael Poss

We present a self-certifying compiler for the COGENT systems language. COGENT is a restricted, polymorphic, higher-order, and purely functional language with linear types and without the need for a trusted runtime or garbage collector. It…

Interactive development environments like Jupyter Notebooks enable incremental coding through cells with immediate feedback, but their linear structure and global namespace limit scalability for large software projects. We present CodePod,…

Software Engineering · Computer Science 2025-08-01 Hebi Li , Forrest Sheng Bao , Qi Xiao , Jin Tian

We present the design and implementation of a macro-embedding of a family of compiler intermediate languages, from a Scheme-like language to x86-64, into Racket. This embedding is used as part of a testing framework for a compilers course…

Programming Languages · Computer Science 2025-09-25 William J. Bowman

C is the lingua franca of programming and almost any device can be programmed using C. However, programming mod-ern heterogeneous architectures such as multi-core CPUs and GPUs requires explicitly expressing parallelism as well as…

The Gisela framework for declarative programming was developed with the specific aim of providing a tool that would be useful for knowledge representation and reasoning within real-world applications. To achieve this, a complete integration…

Software Engineering · Computer Science 2007-05-23 Goran Falkman , Olof Torgersson

PetscSF, the communication component of the Portable, Extensible Toolkit for Scientific Computation (PETSc), is designed to provide PETSc's communication infrastructure suitable for exascale computers that utilize GPUs and other…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-05-25 Junchao Zhang , Jed Brown , Satish Balay , Jacob Faibussowitsch , Matthew Knepley , Oana Marin , Richard Tran Mills , Todd Munson , Barry F. Smith , Stefano Zampini

Linear logic Concurrent Constraint programming (LCC) is an extension of concurrent constraint programming (CC) where the constraint system is based on Girard's linear logic instead of the classical logic. In this paper we address the…

Programming Languages · Computer Science 2011-08-02 Rémy Haemmerlé

Open Source Software (OSS) is forming the spines of technology infrastructures, attracting millions of talents to contribute. Notably, it is challenging and critical to consider both the developers' interests and the semantic features of…

Software Engineering · Computer Science 2023-04-26 Yiqiao Jin , Yunsheng Bai , Yanqiao Zhu , Yizhou Sun , Wei Wang

Software comprehension can be extremely time-consuming due to the ever-growing size of codebases. Consequently, there is an increasing need to accelerate the code comprehension process to facilitate maintenance and reduce associated costs.…

Software Engineering · Computer Science 2024-01-15 Krzysztof Borowski , Bartosz Baliś , Tomasz Orzechowski