English
Related papers

Related papers: Extending OCaml's 'open'

200 papers

We present modular implicits, an extension to the OCaml language for ad-hoc polymorphism inspired by Scala implicits and modular type classes. Modular implicits are based on type-directed implicit module parameters, and elaborate…

Programming Languages · Computer Science 2015-12-08 Leo White , Frédéric Bour , Jeremy Yallop

We present a library for generic programming in OCaml, adapting some techniques borrowed from other functional languages. The library makes use of three recent additions to OCaml: generalised abstract datatypes are essential to reflect…

Programming Languages · Computer Science 2019-01-01 Florent Balestrieri , Michel Mauny

Common functional languages incentivize tail-recursive functions, as opposed to general recursive functions that consume stack space and may not scale to large inputs. This distinction occasionally requires writing functions in a…

Programming Languages · Computer Science 2024-12-02 Clément Allain , Frédéric Bour , Basile Clément , François Pottier , Gabriel Scherer

Although the notion of qualified names is popular in module systems, it causes severe complications. In this paper, we propose an alternative to qualified names. The key idea is to import the declarations in other modules to the current…

Programming Languages · Computer Science 2022-10-10 Keehang Kwon , Daeseong Kang

Omni-modal language models (OLMs) aim to integrate and reason over diverse input modalities--such as text, images, video, and audio--while maintaining strong language capabilities. Despite recent advancements, existing models, especially…

Computation and Language · Computer Science 2025-06-03 Tinghui Zhu , Kai Zhang , Muhao Chen , Yu Su

This paper answers several open questions around structures with o-minimal open core. We construct an expansion of an o-minimal structure $\mathcal{R}$ by a unary predicate such that its open core is a proper o-minimal expansion of…

Logic · Mathematics 2021-01-08 Alexi Block Gorman , Erin Caulfield , Philipp Hieronymi

OCaml is an industrial-strength, multi-paradigm programming language, widely used in industry and academia. OCaml is also one of the few modern managed system programming languages to lack support for shared memory parallel programming.…

Programming Languages · Computer Science 2020-07-03 KC Sivaramakrishnan , Stephen Dolan , Leo White , Sadiq Jaffer , Tom Kelly , Anmol Sahoo , Sudha Parimala , Atul Dhiman , Anil Madhavapeddy

OCaml function calls consume space on the system stack. Operating systems set default limits on the stack space which are much lower than the available memory. If a program runs out of stack space, they get the dreaded "Stack Overflow"…

Programming Languages · Computer Science 2021-02-22 Frédéric Bour , Basile Clément , Gabriel Scherer

Pattern-based, modular ontologies have several beneficial properties that lend themselves to FAIR data practices, especially as it pertains to Interoperability and Reusability. However, developing such ontologies has a high upfront cost,…

Artificial Intelligence · Computer Science 2019-04-12 Cogan Shimizu , Quinn Hirt , Pascal Hitzler

We present in this paper the preliminary design of a module system based on a notion of components such as they are found in COM. This module system is inspired from that of Standard ML, and features first-class instances of components,…

Programming Languages · Computer Science 2009-09-29 Riccardo Pucella

We recommend a programming construct - availability check - for programs that need to automatically adjust to presence or absence of segments of code. The idea is to check the existence of a valid definition before a function call is…

Programming Languages · Computer Science 2007-05-23 Joy Mukherjee , Srinidhi Varadarajan

It is next to impossible to develop real-life applications in just pure Prolog. With XPCE we realised a mechanism for integrating Prolog with an external object-oriented system that turns this OO system into a natural extension to Prolog.…

Software Engineering · Computer Science 2007-05-23 Jan Wielemaker , Anjo Anjewierden

There are several ways to convert a closure or interior operation to a different operation that has particular desirable properties. In this paper, we axiomatize 3 ways to do so, drawing on disparate examples from the literature, including…

Commutative Algebra · Mathematics 2024-11-20 Neil Epstein , Rebecca R. G. , Janet Vassilev

Let X be a projective scheme; let M and N be two coherent O_X-modules. Given an integer m, we present an algorithm for computing the global extension module Ext^m(X;M,N). In particular, this allows one to compute the sheaf cohomology…

Algebraic Geometry · Mathematics 2010-03-15 Gregory G. Smith

Large Language Models (LLMs) can solve previously intractable tasks given only natural-language instructions and a few examples, but they remain difficult to steer precisely and lack a key capability for building reliable software at scale:…

Programming Languages · Computer Science 2026-03-19 Jonathan Laurent , André Platzer

This paper presents an operational semantics for UML activity diagrams. The purpose of this semantics is three-fold: to give a robust basis for verifying model correctness; to help validate model transformations; and to provide a…

Logic in Computer Science · Computer Science 2016-04-11 Zamira Daw , Rance Cleaveland

We make another assault on the longstanding problem of debugging. After exploring why debuggers are not used as widely as one might expect, especially in functional programming environments, we define the characteristics of a debugger which…

Programming Languages · Computer Science 2019-05-17 John Whitington , Tom Ridge

This work presents an extension to MPI supporting the one-sided communication model and window allocations in storage. Our design transparently integrates with the current MPI implementations, enabling applications to target MPI windows in…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-04-28 Sergio Rivas-Gomez , Stefano Markidis , Ivy Bo Peng , Erwin Laure , Gokcen Kestor , Roberto Gioiosa

In modern OCaml, single-argument datatype declarations (variants with a single constructor, records with a single field) can sometimes be `unboxed'. This means that their memory representation is the same as their single argument (omitting…

Programming Languages · Computer Science 2018-12-13 Simon Colin , Rodolphe Lepigre , Gabriel Scherer

OWLOOP is an Application Programming Interface (API) for using the Ontology Web Language (OWL) by the means of Object-Oriented Programming (OOP). It is common to design software architectures using the OOP paradigm for increasing their…

Artificial Intelligence · Computer Science 2022-01-03 Luca Buoncompagni , Syed Yusha Kareem , Fulvio Mastrogiovanni
‹ Prev 1 2 3 10 Next ›