English
Related papers

Related papers: Extensible Pattern Matching in an Extensible Langu…

200 papers

Pattern matching is a powerful tool for symbolic computations, based on the well-defined theory of term rewriting systems. Application domains include algebraic expressions, abstract syntax trees, and XML and JSON data. Unfortunately, no…

Programming Languages · Computer Science 2017-10-20 Manuel Krebber , Henrik Barthels , Paolo Bientinesi

Pattern matching is a powerful tool for symbolic computations. Applications include term rewriting systems, as well as the manipulation of symbolic expressions, abstract syntax trees, and XML and JSON data. It also allows for an intuitive…

Programming Languages · Computer Science 2017-10-09 Manuel Krebber , Henrik Barthels , Paolo Bientinesi

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

Pattern matching is a powerful tool which is part of many functional programming languages as well as computer algebra systems such as Mathematica. Among the existing systems, Mathematica offers the most expressive pattern matching.…

Symbolic Computation · Computer Science 2017-05-03 Manuel Krebber

Pattern-matching programming is an example of a rule-based programming style developed in functional languages. This programming style is intensively used in dialects of ML but is restricted to algebraic data-types. This restriction limits…

Programming Languages · Computer Science 2009-12-25 Julien Cohen

Patterns embody repeating phenomena, and, as such, they are partly but not fully detachable from their context. 'Design patterns' and 'pattern languages' are established methods for working with patterns. They have been applied in…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-12-09 Raymond Puzio , Paola Ricaurte , Charles Jeffrey Danoff , Charlotte Pierce , Analua Dutka-Chirichetti , Vitor Bruno , Hermano Cintra , Joseph Corneli

Pattern languages are well-established in the software architecture community. Many different aspects of creating a software architecture are addressed by such languages. Thus, several pattern languages have to be considered when building a…

Software Engineering · Computer Science 2021-04-21 Frank Leymann , Johanna Barzen

Linear type systems have a long and storied history, but not a clear path forward to integrate with existing languages such as OCaml or Haskell. In this paper, we study a linear type system designed with two crucial properties in mind:…

Programming Languages · Computer Science 2017-11-09 Jean-Philippe Bernardy , Mathieu Boespflug , Ryan R. Newton , Simon Peyton Jones , Arnaud Spiwack

Large language models (LLMs) call for extension of context to handle many critical applications. However, the existing approaches are prone to expensive costs and inferior quality of context extension. In this work, we propose Extensible…

Computation and Language · Computer Science 2024-02-20 Ninglu Shao , Shitao Xiao , Zheng Liu , Peitian Zhang

Large language models (LLMs) call for extension of context to handle many critical applications. However, the existing approaches are prone to expensive costs and inferior quality of context extension. In this work, we proposeExtensible…

Computation and Language · Computer Science 2024-02-20 Kun Luo , Zheng Liu , Shitao Xiao , Kang Liu

In this thesis we develop tools for effective and flexible pattern matching. We introduce a new pattern matching system called amethyst. Amethyst is not only a generator of parsers of programming languages, but can also serve as an…

Programming Languages · Computer Science 2012-10-15 Ondřej Bílka

Non-free data types are data types whose data have no canonical forms. For example, multisets are non-free data types because the multiset $\{a,b,b\}$ has two other equivalent but literally different forms $\{b,a,b\}$ and $\{b,b,a\}$.…

Programming Languages · Computer Science 2019-05-28 Satoshi Egi , Yuichi Nishiwaki

Logic programming languages present clear advantages in terms of declarativeness and conciseness. However, the ideas of logic programming have been met with resistance in other programming communities, and have not generally been adopted by…

Programming Languages · Computer Science 2026-01-08 Ivan Perez , Angel Herranz

Dependent pattern matching is a key feature in dependently typed programming. However, there is a theory-practice disconnect: while many proof assistants implement pattern matching as primitive, theoretical presentations give semantics to…

Programming Languages · Computer Science 2025-01-31 Joseph Eremondi , Ohad Kammar

Pattern matching is an important feature of programming languages for data abstraction. Many pattern-matching extensions have been proposed and implemented for extending the range of data types to which pattern matching is applicable. Among…

Programming Languages · Computer Science 2019-11-13 Satoshi Egi

Patterns are words with terminals and variables. The language of a pattern is the set of words obtained by uniformly substituting all variables with words that contain only terminals. In their original definition, patterns only allow for…

Formal Languages and Automata Theory · Computer Science 2026-03-31 Klaus Jansen , Dirk Nowotka , Lis Pirotton , Corinna Wambsganz , Max Wiedenhöft

Patterns describe proven solutions for recurring problems. Typically, patterns in a particular domain are interrelated and organized in pattern languages. As real-world problems often require patterns of multiple domains, different pattern…

Software Engineering · Computer Science 2020-03-23 Manuela Weigold , Johanna Barzen , Uwe Breitenbücher , Michael Falkenthal , Frank Leymann , Karoline Wild

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

Pattern matching is a popular feature in functional, imperative and object-oriented programming languages. Language designers should therefore invest effort in a good design for pattern matching. Most languages choose a first-match…

Programming Languages · Computer Science 2025-10-16 David Binder , Lean Ermantraut

Regular expression patterns are a key feature of document processing languages like Perl and XDuce. It is in this context that the first and longest match policies have been proposed to disambiguate the pattern matching process. We formally…

Programming Languages · Computer Science 2007-05-23 Stijn Vansummeren
‹ Prev 1 2 3 10 Next ›