English
Related papers

Related papers: Transforming while/do/for/foreach-Loops into Recur…

200 papers

Probabilistic programming languages are valuable because they allow domain experts to express probabilistic models and inference algorithms without worrying about irrelevant details. However, for decades there remained an important and…

Programming Languages · Computer Science 2019-07-03 Rajan Walia , Praveen Narayanan , Jacques Carette , Sam Tobin-Hochstadt , Chung-chieh Shan

We revisit occurrence typing, a technique to refine the type of variables occurring in type-cases and, thus, capturesome programming patterns used in untyped languages. Although occurrence typing was tied from its inceptionto set-theoretic…

Programming Languages · Computer Science 2022-02-25 Giuseppe Castagna , Victor Lanvin , Mickaël Laurent , Kim Nguyen

This extended paper presents 1) a novel hierarchy and recursion extension to the process tree model; and 2) the first, recursion aware process model discovery technique that leverages hierarchical information in event logs, typically…

Software Engineering · Computer Science 2017-10-26 Maikel Leemans , Wil M. P. van der Aalst , Mark G. J. van den Brand

We propose a bridge between functional and object-oriented programming in the first-year curriculum. Traditionally, curricula that begin with functional programming transition to a professional, usually object-oriented, language in the…

Programming Languages · Computer Science 2013-12-11 Sam Tobin-Hochstadt , David Van Horn

Our aim here is to illustrate how the benefits of structural corecursion can be found in a broader swath of the programming landscape than previously thought. Beginning from a tutorial on structural corecursion in the total, pure functional…

Programming Languages · Computer Science 2021-03-15 Paul Downen , Zena M. Ariola

This paper proposes a technique to specify and verify whether a loop can be parallelised. Our approach can be used as an additional step in a parallelising compiler to verify user annotations about loop dependences. Essentially, our…

Software Engineering · Computer Science 2014-06-16 Stefan Blom , Saeed Darabi , Marieke Huisman

While there are many approaches for automatically proving termination of term rewrite systems, up to now there exist only few techniques to disprove their termination automatically. Almost all of these techniques try to find loops, where…

Logic in Computer Science · Computer Science 2010-12-30 René Thiemann , Christian Sternagel , Jürgen Giesl , Peter Schneider-Kamp

Sequential programming and work-flow programming are two useful, but radically different, ways of describing computational processing. Of the two, it is sequential programming that we teach all programmers and support by programming…

Programming Languages · Computer Science 2011-08-24 William Harrison

Program transformation has gained a wide interest since it is used for several purposes: altering semantics of a program, adding features to a program or performing optimizations. In this paper we focus on program transformations at the…

Logic in Computer Science · Computer Science 2013-08-01 Razika Lounas , Mohamed Mezghiche , Jean-Louis Lanet

We consider, as a means of making programming languages more flexible and powerful, a parsing algorithm in which the parser may freely modify the grammar while parsing. We are particularly interested in a modification of the canonical LR(1)…

Programming Languages · Computer Science 2007-05-23 Blake Hegerle

Logic programming has traditiLogic programming has traditionally lacked devices for expressing iterative tasks. To overcome this problem, this paper proposes iterative goal formulas of the form $\seqandq{x}{L} G$ where $G$ is a goal, $x$ is…

Programming Languages · Computer Science 2016-06-15 Keehang Kwon

Loop invariants are software properties that hold before and after every iteration of a loop. As such, invariants provide inductive arguments that are key in automating the verification of program loops. The problem of generating loop…

Logic in Computer Science · Computer Science 2023-05-25 George Kenison , Laura Kovács , Anton Varonka

Software systems evolve throughout their life cycles. Many revisions are produced over time. Model checking each revision of the software is impractical. Regression verification suggests reusing intermediate results from the previous…

Software Engineering · Computer Science 2018-06-14 Fei He , Qianshan Yu , Liming Cai

Remora is a higher-order, rank-polymorphic array-processing programming language, in the same general class of languages as APL and J. It is intended for writing programs to be executed on parallel hardware. We provide an example-driven…

Programming Languages · Computer Science 2020-01-03 Olin Shivers , Justin Slepak , Panagiotis Manolios

Discrete structures are currently second-class in differentiable programming. Since functions over discrete structures lack overt derivatives, differentiable programs do not differentiate through them and limit where they can be used. For…

Programming Languages · Computer Science 2025-11-20 Joey Velez-Ginorio , Nada Amin , Konrad Kording , Steve Zdancewic

Context: The term reactivity is popular in two areas of research: programming languages and distributed systems. On one hand, reactive programming is a paradigm which provides programmers with the means to declaratively write event-driven…

Programming Languages · Computer Science 2019-02-05 Florian Myter , Christophe Scholliers , Wolfgang De Meuter

Context: Software systems are in continuous evolution through source code changes to fixing bugs, adding new functionalities and improving the internal architecture. All these practices are recorded in the version history, which can be…

Software Engineering · Computer Science 2020-01-17 Leandro Ungari Cayres , Bruno Santos de Lima , Rogério Eduardo Garcia

This is a talk proposal for HOPE 2013. Using iteration over a collection as a case study, we wish to illustrate the strengths and weaknesses of the prototype programming language Mezzo.

Programming Languages · Computer Science 2013-12-02 Armaël Guéneau , François Pottier , Jonathan Protzenko

Modern programming languages, such as Java and C#, typically provide features that handle exceptions. These features separate error-handling code from regular source code and are proven to enhance the practice of software reliability,…

Software Engineering · Computer Science 2017-04-05 Guilherme B. de Pádua , Weiyi Shang

In this article one builds a class of recursive sets, one establishes properties of these sets, and one proposes applications.

General Mathematics · Mathematics 2007-05-23 Florentin Smarandache
‹ Prev 1 4 5 6 7 8 10 Next ›