中文
相关论文

相关论文: Semantic preservation for a type directed translat…

200 篇论文

Featherweight Generic Go (FGG) is a minimal core calculus modeling the essential features of the programming language Go. It includes support for overloaded methods, interface types, structural subtyping and generics. The most…

编程语言 · 计算机科学 2023-08-08 Martin Sulzmann , Stefan Wehr

The Go programming language is an increasingly popular language but some of its features lack a formal investigation. This article explains Go's resolution mechanism for overloaded methods and its support for structural subtyping by means…

编程语言 · 计算机科学 2021-09-22 Martin Sulzmann , Stefan Wehr

We describe a design for generics in Go inspired by previous work on Featherweight Java by Igarashi, Pierce, and Wadler. Whereas subtyping in Java is nominal, in Go it is structural, and whereas generics in Java are defined via erasure, in…

Java's type system mostly relies on type checking augmented with local type inference to improve programmer convenience. We study global type inference for Featherweight Generic Java (FGJ), a functional Java core language. Given generic…

编程语言 · 计算机科学 2022-05-20 Andreas Stadelmeier , Martin Plümicke , Peter Thiemann

Resource-aware type systems statically approximate not only the expected result type of a program, but also the way external resources are used, e.g., how many times the value of a variable is needed. We extend the type system of…

编程语言 · 计算机科学 2023-02-16 Riccardo Bianchini , Francesco Dagnino , Paola Giannini , Elena Zucca

Go is a production-level statically typed programming language whose design features explicit message-passing primitives and lightweight threads, enabling (and encouraging) programmers to develop concurrent systems where components interact…

编程语言 · 计算机科学 2017-03-01 Julien Lange , Nicholas Ng , Bernardo Toninho , Nobuko Yoshida

We present FJ&$\lambda$, a new core calculus that extends Featherweight Java (FJ) with interfaces, supporting multiple inheritance in a restricted form, $\lambda$-expressions, and intersection types. Our main goal is to formalise how…

计算机科学中的逻辑 · 计算机科学 2023-06-22 Lorenzo Bettini , Viviana Bono , Mariangiola Dezani-Ciancaglini , Paola Giannini , Betti Venneri

Bringing the benefits of gradual typing to a language with parametric polymorphism like System F, while preserving relational parametricity, has proven extremely challenging: first attempts were formulated a decade ago, and several designs…

编程语言 · 计算机科学 2020-06-01 Elizabeth Labrada , Matías Toro , Éric Tanter

Go is a popular statically-typed industrial programming language. To aid the type safe reuse of code, the recent Go release (Go 1.18) published on 15th March 2022 includes bounded parametric polymorphism via generic types. Go 1.18…

编程语言 · 计算机科学 2022-10-11 Stephen Ellis , Shuofei Zhu , Nobuko Yoshida , Linhai Song

This paper addresses compositional and incremental type checking for object-oriented programming languages. Recent work achieved incremental type checking for structurally typed functional languages through co-contextual typing rules, a…

编程语言 · 计算机科学 2018-05-24 Edlira Kuci , Sebastian Erdweg , Oliver Bračevac , Andi Bejleri , Mira Mezini

We present a gradually typed language, GrEff, with effects and handlers that supports migration from unchecked to checked effect typing. This serves as a simple model of the integration of an effect typing discipline with an existing…

编程语言 · 计算机科学 2023-04-06 Max S. New , Eric Giovannini , Daniel R. Licata

We present a Coq formalisation of the small-step operational semantics of Jafun, a small Java-like language with classes. This format of semantics makes it possible to naturally specify and prove invariants that should hold at each…

计算机科学中的逻辑 · 计算机科学 2018-08-17 Aleksy Schubert , Jacek Chrząszcz

Rewriting is a formalism widely used in computer science and mathematical logic. When using rewriting as a programming or modeling paradigm, the rewrite rules describe the transformations one wants to operate and rewriting strategies are…

编程语言 · 计算机科学 2019-03-14 Horatiu Cirstea , Serguei Lenglet , Pierre-Etienne Moreau

Existing minimal Object-Oriented models (OO), like Featherweight Java (FJ), are valuable for modelling programs and designing new programming languages and tools. However, their utility in developing real-world programs is limited. We…

编程语言 · 计算机科学 2024-05-14 Nick Webster , Marco Servetto , Michael Homer

A coercion semantics of a programming language with subtyping is typically defined on typing derivations rather than on typing judgments. To avoid semantic ambiguity, such a semantics is expected to be coherent, i.e., independent of the…

编程语言 · 计算机科学 2023-06-22 Dariusz Biernacki , Piotr Polesiuk

A common approach to improve software quality is to use programming guidelines to avoid common kinds of errors. In this paper, we consider the problem of enforcing guidelines for Featherweight Java (FJ). We formalize guidelines as sets of…

计算机科学中的逻辑 · 计算机科学 2022-09-09 Serdar Erbatur , Ulrich Schöpp , Chuangjie Xu

We demonstrate a method to infer polymorphically principal and subtyping-minimal types for an ML-like core language by assigning ranges within a lattice to type variables. We demonstrate the termination and completeness of this algorithm,…

编程语言 · 计算机科学 2013-08-14 Eli Gottlieb

Fine-grained information on translation errors is helpful for the translation evaluation community. Existing approaches can not synchronously consider error position and type, failing to integrate the error information of both. In this…

计算与语言 · 计算机科学 2023-02-20 Keqin Bao , Yu Wan , Dayiheng Liu , Baosong Yang , Wenqiang Lei , Xiangnan He , Derek F. Wong , Jun Xie

It is natural for probabilistic programs to use conditionals to express alternative substructures in models, and loops (recursion) to express repeated substructures in models. Thus, probabilistic programs with conditionals and recursion…

编程语言 · 计算机科学 2020-10-26 David Chiang , Chung-chieh Shan

Functional programming languages are particularly well-suited for building automated reasoning systems, since (among other reasons) a logical term is well modeled by an inductive type, traversing a term can be implemented generically as a…

编程语言 · 计算机科学 2020-06-02 Daniel Selsam , Simon Hudon , Leonardo de Moura
‹ 上一页 1 2 3 10 下一页 ›