English
Related papers

Related papers: Specific "scientific" data structures, and their p…

200 papers

Neural networks are typically represented as data structures that are traversed either through iteration or by manual chaining of method calls. However, a deeper analysis reveals that structured recursion can be used instead, so that…

Programming Languages · Computer Science 2022-09-30 Minh Nguyen , Nicolas Wu

Many Haskell textbooks explain the evaluation of pure functional programs as a process of stepwise rewriting using equations. However, usual implementation techniques perform program transformations that make producing the corresponding…

Programming Languages · Computer Science 2024-07-17 Pedro Vasconcelos , Rodrigo Marques

It is a strength of graph-based data formats, like RDF, that they are very flexible with representing data. To avoid run-time errors, program code that processes highly-flexible data representations exhibits the difficulty that it must…

Programming Languages · Computer Science 2019-07-02 Martin Leinberger , Philipp Seifer , Claudia Schon , Ralf Lämmel , Steffen Staab

Since its birth as a new scientific body of knowledge in the late 1950s, computer programming has become a fundamental skill needed in many other disciplines. However, programming is not easy, it is prone to errors and code re-use is key…

Programming Languages · Computer Science 2026-02-20 Paulo R. Pereira , Jose N. Oliveira

Traversal strategies \'a la Stratego (also \'a la Strafunski and 'Scrap Your Boilerplate') provide an exceptionally versatile and uniform means of querying and transforming deeply nested and heterogeneously structured data including terms…

Programming Languages · Computer Science 2012-01-31 Ralf Laemmel , Simon Thompson , Markus Kaiser

Non-parametric representations of dynamical systems based on the image of a Hankel matrix of data are extensively used for data-driven control. However, if samples of data are missing, obtaining such representations becomes a difficult…

Systems and Control · Electrical Eng. & Systems 2024-07-09 Mohammad Alsalti , Ivan Markovsky , Victor G. Lopez , Matthias A. Müller

We show that streams and lazy data structures are a natural idiom for programming with infinite-dimensional Bayesian methods such as Poisson processes, Gaussian processes, jump processes, Dirichlet processes, and Beta processes. The crucial…

Programming Languages · Computer Science 2022-12-15 Swaraj Dash , Younesse Kaddar , Hugo Paquet , Sam Staton

Programming language definitions assign formal meaning to complete programs. Programmers, however, spend a substantial amount of time interacting with incomplete programs -- programs with holes, type inconsistencies and binding…

Programming Languages · Computer Science 2017-03-28 Cyrus Omar , Ian Voysey , Michael Hilton , Joshua Sunshine , Claire Le Goues , Jonathan Aldrich , Matthew A. Hammer

This paper presents a so-called maramafication of an essential part of functional programming languages such as Haskell or Clean: the construction of fully polymorphic well-typed algebraic data structures based on type definitions with at…

Programming Languages · Computer Science 2018-12-18 Chide Groenouwe , Jesse Nortier , John-Jules Ch. Meyer

Terms are a concise representation of tree structures. Since they can be naturally defined by an inductive type, they offer data structures in functional programming and mechanised reasoning with useful principles such as structural…

Logic in Computer Science · Computer Science 2015-07-01 Makoto Hamana

The study of polarity in computation has revealed that an "ideal" programming language combines both call-by-value and call-by-name evaluation; the two calling conventions are each ideal for half the types in a programming language. But…

Logic in Computer Science · Computer Science 2023-06-22 Paul Downen , Zena M. Ariola

Many tools used to process programs, like compilers, analyzers, or verifiers, perform transformations on their intermediate program representation, like abstract syntax trees. Implementing such program transformations is a non-trivial task,…

Programming Languages · Computer Science 2026-01-21 Michael Hanus , Steven Libby

Inference algorithms for probabilistic programming are complex imperative programs with many moving parts. Efficient inference often requires customising an algorithm to a particular probabilistic model or problem, sometimes called…

Programming Languages · Computer Science 2024-12-24 Minh Nguyen , Roly Perera , Meng Wang , Steven Ramsay

This paper introduces semi-ring dictionaries, a powerful class of compositional and purely functional collections that subsume other collection types such as sets, multisets, arrays, vectors, and matrices. We developed SDQL, a statically…

Programming Languages · Computer Science 2022-03-23 Amir Shaikhha , Mathieu Huot , Jaclyn Smith , Dan Olteanu

In functional logic programs, rules are applicable independently of textual order, i.e., any rule can potentially be used to evaluate an expression. This is similar to logic languages and contrary to functional languages, e.g., Haskell…

Programming Languages · Computer Science 2016-07-06 Sergio Antoy , Michael Hanus

While functional programming is an efficient way to express complex software, functional programming languages have a steep learning curve. Haskell can be challenging to learn for students who were only introduced to imperative programming.…

Programming Languages · Computer Science 2019-06-28 Boldizsár Németh , Eunjong Choi , Erina Makihara , Hajimu Iida

Big Data query systems represent data in a columnar format for fast, selective access, and in some cases (e.g. Apache Drill), perform calculations directly on the columnar data without row materialization, avoiding runtime costs. However,…

Programming Languages · Computer Science 2017-11-06 Jim Pivarski , Peter Elmer , Brian Bockelman , Zhe Zhang

The focus of these lecture notes is on abstract models and basic ideas and results that relate to the operational semantics of programming languages largely conceived. The approach is to start with an abstract description of the computation…

Programming Languages · Computer Science 2025-10-15 Roberto M. Amadio

Graphs are a generalized concept that encompasses more complex data structures than trees, such as difference lists, doubly-linked lists, skip lists, and leaf-linked trees. Normally, these structures are handled with destructive assignments…

Programming Languages · Computer Science 2022-09-13 Jin Sano , Naoki Yamamoto , Kazunori Ueda

Push/enter and eval/apply are two calling conventions used in implementations of functional languages. In this paper, we explore the following observation: when considering functions with multiple arguments, the stack under the push/enter…

Programming Languages · Computer Science 2016-06-22 Maciej Piróg , Jeremy Gibbons