中文
相关论文

相关论文: Gradual Typing in an Open World

200 篇论文

Motivation: Automated bug detection in dynamically typed languages such as Python is essential for maintaining code quality. The lack of mandatory type annotations in such languages can lead to errors that are challenging to identify early…

软件工程 · 计算机科学 2025-01-17 Boqi Chen , José Antonio Hernández López , Gunter Mussbacher , Dániel Varró

In this article we show how the problem of neural text generation can be constructively reformulated in terms of transitions between the states of a finite-state machine. This framework leads to an efficient approach to guiding text…

计算与语言 · 计算机科学 2023-08-22 Brandon T. Willard , Rémi Louf

Voice dictation is an increasingly important text input modality. Existing systems that allow both dictation and editing-by-voice restrict their command language to flat templates invoked by trigger words. In this work, we study the…

计算与语言 · 计算机科学 2023-07-11 Belinda Z. Li , Jason Eisner , Adam Pauls , Sam Thomson

The Julia programming language was designed to fill the needs of scientific computing by combining the benefits of productivity and performance languages. Julia allows users to write untyped scripts easily without needing to worry about…

编程语言 · 计算机科学 2023-10-27 Benjamin Chung

Dependently typed programming languages allow sophisticated properties of data to be expressed within the type system. Of particular use in dependently typed programming are indexed types that refine data by computationally useful…

计算机科学中的逻辑 · 计算机科学 2015-07-01 Robert Atkey , Patricia Johann , Neil Ghani

Counters that hold natural numbers are ubiquitous in modeling and verifying software systems; for example, they model dynamic creation and use of resources in concurrent programs. Unfortunately, such discrete counters often lead to…

形式语言与自动机理论 · 计算机科学 2025-11-27 A. R. Balasubramanian , Matthew Hague , Rupak Majumdar , Ramanathan S. Thinniyam , Georg Zetzsche

The gradual guarantee is an important litmus test for gradually typed languages, that is, languages that enable a mixture of static and dynamic typing. The gradual guarantee states that changing the precision of a type annotation does not…

编程语言 · 计算机科学 2024-12-05 Jeremy G. Siek

A transpiler converts code from one programming language to another. Many practical uses of transpilers require the user to be able to guide or customize the program produced from a given input program. This customizability is important for…

编程语言 · 计算机科学 2023-03-07 Bo Wang , Aashish Kolluri , Ivica Nikolić , Teodora Baluta , Prateek Saxena

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

Precise and fast static type analysis for dynamically typed language is very difficult. This is mainly because the lack of static type information makes it difficult to approximate all possible values of a variable. Actually, the existing…

软件工程 · 计算机科学 2023-02-16 Ryutaro Kodama , Yoshitaka Arahori , Kathuhiko Gondow

Refinement types enrich a language's type system with logical predicates that circumscribe the set of values described by the type, thereby providing software developers a tunable knob with which to inform the type system about what…

编程语言 · 计算机科学 2020-10-16 Ranjit Jhala , Niki Vazou

Type soundness is an important property of modern programming languages. In this paper we explore the idea that "well-typed languages are sound": the idea that the appropriate typing discipline over language specifications guarantees that…

编程语言 · 计算机科学 2016-11-17 Matteo Cimini , Dale Miller , Jeremy G. Siek

Voice dictation is increasingly used for text entry, especially in mobile scenarios. However, the speech-based experience gets disrupted when users must go back to a screen and keyboard to review and edit the text. While existing dictation…

人机交互 · 计算机科学 2024-03-12 Can Liu , Siying Hu , Li Feng , Mingming Fan

We propose the concept of adaptable processes as a way of overcoming the limitations that process calculi have for describing patterns of dynamic process evolution. Such patterns rely on direct ways of controlling the behavior and location…

计算机科学中的逻辑 · 计算机科学 2015-07-01 Mario Bravetti , Cinzia Di Giusto , Jorge A Perez , Gianluigi Zavattaro

Metaprogramming enables the generation of performant code, while gradual typing facilitates the smooth migration from untyped scripts to robust statically typed programs. However, combining these features with imperative state -…

编程语言 · 计算机科学 2026-02-24 Tianyu Chen , Darshal Shetty , Jeremy G. Siek , Chao-Hong Chen , Weixi Ma , Arnaud Venet , Rocky Liu

In recent years, dynamic languages, such as JavaScript or Python, have been increasingly used in a wide range of fields and applications. Their tricky and misunderstood behaviors pose a hard challenge for static analysis of these…

编程语言 · 计算机科学 2019-08-21 Vincenzo Arceri , Isabella Mastroeni

Interpreters have a bad reputation for having lower performance than just-in-time compilers. We present a new way of building high performance interpreters that is particularly effective for executing dynamically typed programming…

编程语言 · 计算机科学 2013-10-10 Stefan Brunthaler

TypeShift is a tool for visualizing linguistic patterns in the timing of typing production. Language production is a complex process which draws on linguistic, cognitive and motor skills. By visualizing holistic trends in the typing…

计算与语言 · 计算机科学 2021-03-09 Adam Goodkind

Efficiently supporting sound gradual typing in a language with structural types is challenging. To date, the Grift compiler is the only close-to-the-metal implementation of gradual typing in this setting, exploiting coercions for runtime…

编程语言 · 计算机科学 2025-12-30 José Luis Romero , Cristóbal Isla , Matías Toro , Éric Tanter

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:…

编程语言 · 计算机科学 2017-11-09 Jean-Philippe Bernardy , Mathieu Boespflug , Ryan R. Newton , Simon Peyton Jones , Arnaud Spiwack