English
Related papers

Related papers: Design Patterns for Functional Strategic Programmi…

200 papers

This paper explores how design patterns could be revisited in the era of mainstream functional programming languages. I discuss the kinds of knowledge that ought to be represented as functional design patterns: architectural concepts that…

Programming Languages · Computer Science 2023-07-17 Will Crichton

We unify functional and logic programming by treating predicatesas functions equipped with their support: the set of inputs whose output is nonzero. Datalog, for instance, is a language of finitely supported boolean functions. Finite…

Programming Languages · Computer Science 2026-04-30 Michael Arntzenius , Max Willsey

Digital Geometry software should reflect the generality of the underlying mathe- matics: mapping the latter to the former requires genericity. By designing generic solutions, one can effectively reuse digital geometry data structures and…

Mathematical Software · Computer Science 2012-09-20 Roland Levillain , Thierry Géraud , Laurent Najman

Design patterns have been used in various fields of inquiry and endeavour to externalize procedural knowledge in a form that supports human reasoning and coordination. In this paper, we show that contemporary Large Language Model…

Human-Computer Interaction · Computer Science 2026-02-05 Joseph Corneli , Charles J. Danoff , Raymond S. Puzio , Sridevi Ayloo , Sergio Belich , Andre Wilkinson , Mary Tedeschi , Pauline Mosley

We propose a general framework for first-order functional logic programming, supporting lazy functions, non-determinism and polymorphic datatypes whose data constructors obey a set C of equational axioms. On top of a given C, we specify a…

Programming Languages · Computer Science 2007-05-23 Puri Arenas-Sanchez , Mario Rodriguez-Artalejo

The idea of using unfolding as a way of computing a program semantics has been applied successfully to logic programs and has shown itself a powerful tool that provides concrete, implementable results, as its outcome is actually source…

Programming Languages · Computer Science 2017-08-29 José María Rey-Poza , Julio Mariño-Carballo

There is a growing need for abstractions in logic specification languages such as FO(.) and ASP. One technique to achieve these abstractions are templates (sometimes called macros). While the semantics of templates are virtually always…

Logic in Computer Science · Computer Science 2020-02-19 Ingmar Dasseville , Matthias van der Hallen , Gerda Janssens , Marc Denecker

Structured recursion schemes have been widely used in constructing, optimising, and reasoning about programs over inductive and coinductive datatypes. Their plain forms, catamorphisms and anamorphisms, are restricted in expressiveness. Thus…

Programming Languages · Computer Science 2022-06-28 Zhixuan Yang , Nicolas Wu

In product design, a decomposition of the overall product function into a set of smaller, interacting functions is usually considered a crucial first step for any computer-supported design tool. Here, we propose a new approach for the…

Artificial Intelligence · Computer Science 2023-02-10 Philipp Rosenthal , Niels Demke , Frank Mantwill , Oliver Niggemann

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

Strategic classification studies learning in settings where users can modify their features to obtain favorable predictions. Most current works focus on simple classifiers that trigger independent user responses. Here we examine the…

Machine Learning · Computer Science 2023-05-02 Itay Eilat , Ben Finkelshtein , Chaim Baskin , Nir Rosenfeld

Data processing is one of the fundamental steps in machine learning pipelines to ensure data quality. Majority of the applications consider the user-defined function (UDF) design pattern for data processing in databases. Although the UDF…

Databases · Computer Science 2023-12-29 Luyi Ma , Nikhil Thakurdesai , Jiao Chen , Jianpeng Xu , Evren Korpeoglu , Sushant Kumar , Kannan Achan

When predictions are performative, the choice of which predictor to deploy influences the distribution of future observations. The overarching goal in learning under performativity is to find a predictor that has low \emph{performative…

Machine Learning · Computer Science 2024-05-29 Licong Lin , Tijana Zrnic

Foundation models (FMs) such as large language models have revolutionized the field of AI by showing remarkable performance in various tasks. However, they exhibit numerous limitations that prevent their broader adoption in many real-world…

Artificial Intelligence · Computer Science 2024-02-05 Debarun Bhattacharjya , Junkyu Lee , Don Joven Agravante , Balaji Ganesan , Radu Marinescu

Mechanisms are a fundamental concept in many areas of science. Nonetheless, there has been little effort to develop structures to represent mechanisms. We explore the issues in developing a basic semantic modeling framework for describing…

Digital Libraries · Computer Science 2019-01-01 Robert B Allen

Context: Generic programming, as defined by Stepanov, is a methodology for writing efficient and reusable algorithms by considering only the required properties of their underlying data types and operations. Generic programming has proven…

Programming Languages · Computer Science 2022-11-04 Benjamin Chetioui , Jaakko Järvi , Magne Haveraaen

This paper brings out the design patterns according to the various services involved in internet banking. The Pattern oriented Software Architecture uses the pattern which eliminates the difficulty of reusability in a particular context.…

Software Engineering · Computer Science 2013-12-10 A. Meiappane , J. Prabavadhi , V. Prasanna Venkatesan

Federated learning has received fast-growing interests from academia and industry to tackle the challenges of data hungriness and privacy in machine learning. A federated learning system can be viewed as a large-scale distributed system…

Machine Learning · Computer Science 2021-06-21 Sin Kit Lo , Qinghua Lu , Liming Zhu , Hye-young Paik , Xiwei Xu , Chen Wang

\emph{Literate programming}, introduced by Knurth, interleaves code and prose so that a program can be read as both executable and explanatory text. We propose \emph{literate execution}, which inverts this relationship: rather than…

Programming Languages · Computer Science 2026-05-04 Joe Bond , Jacob Pake , Cristina David , Andrew McNutt , Trevor Sseguya Muwonge , Dominic Orchard , Roly Perera

Implementing a concurrent data structure typically begins with defining its sequential specification. However, when used \emph{as is}, a nontrivial sequential data structure, such as a linked list, a search tree, or a hash table, may expose…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-03-07 Vincent Gramoli , Petr Kuznetsov , Srivatsan Ravi