English
Related papers

Related papers: Navigating the Python Type Jungle

200 papers

In the theory of programming languages, type inference is the process of inferring the type of an expression automatically, often making use of information from the context in which the expression appears. Such mechanisms turn out to be…

Logic in Computer Science · Computer Science 2012-05-10 Jeremy Avigad

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

Current approaches in paraphrase generation and detection heavily rely on a single general similarity score, ignoring the intricate linguistic properties of language. This paper introduces two new tasks to address this shortcoming by…

Computation and Language · Computer Science 2024-07-17 Jan Philip Wahle , Bela Gipp , Terry Ruas

We present a type system for strategy languages that express program transformations as compositions of rewrite rules. Our row-polymorphic type system assists compiler engineers to write correct strategies by statically rejecting non…

Programming Languages · Computer Science 2021-03-26 Rongxiao Fu , Xueying Qin , Ornela Dardha , Michel Steuwer

Object-oriented scripting languages such as JavaScript or Python gain in popularity due to their flexibility. Still, the growing code bases written in the languages call for methods that make possible to automatically control the properties…

Programming Languages · Computer Science 2012-06-26 Viviana Bono , Marcin Benke , Aleksy Schubert

Multiparty sessions with asynchronous communications and global types play an important role for the modelling of interaction protocols in distributed systems. In designing such calculi the aim is to enforce, by typing, good properties for…

Logic in Computer Science · Computer Science 2023-06-22 Francesco Dagnino , Paola Giannini , Mariangiola Dezani-Ciancaglini

We view channels as the main form of resources in a message-passing programming paradigm. These channels need to be carefully managed in settings where resources are scarce. To study this problem, we extend the pi-calculus with primitives…

Logic in Computer Science · Computer Science 2010-04-08 Edsko de Vries , Adrian Francalanza , Matthew Hennessy

Test Amplification is a method to extend handwritten tests into a more rigorous test suite covering corner cases in the system under test. Unfortunately, the current state-of-the-art for test amplification heavily relies on program analysis…

Software Engineering · Computer Science 2021-12-22 Ebert Schoofs , Mehrdad Abdi , Serge Demeyer

Types in logic programming have focused on conservative approximations of program semantics by regular types, on one hand, and on type systems based on a prescriptive semantics defined for typed programs, on the other. In this paper, we…

Logic in Computer Science · Computer Science 2019-09-19 João Barbosa , Mário Florido , Vítor Santos Costa

Traditional methods for deep NLG adopt pipeline approaches comprising stages such as constructing syntactic input, predicting function words, linearizing the syntactic input and generating the surface forms. Though easier to visualize,…

Computation and Language · Computer Science 2019-11-11 Ratish Puduppully , Yue Zhang , Manish Shrivastava

This is the manual of Cyan, a prototype-based object-oriented language. Cyan supports gradual typing (both static and dynamic typing), single inheritance, anonymous functions, generic prototypes with concepts, non-nullable types, partially…

Programming Languages · Computer Science 2025-07-01 José de Oliveira Guimarães

The exponential growth of textual data presents substantial challenges in management and analysis, notably due to high storage and processing costs. Text classification, a vital aspect of text mining, provides robust solutions by enabling…

Computation and Language · Computer Science 2025-01-22 Kamal Taha , Paul D. Yoo , Chan Yeun , Aya Taha

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

Humans can generate reasonable answers to novel queries (Schulz, 2012): if I asked you what kind of food you want to eat for lunch, you would respond with a food, not a time. The thought that one would respond "After 4pm" to "What would you…

Artificial Intelligence · Computer Science 2022-10-05 Felix A. Sosa , Tomer Ullman

Ontologies formalise how the concepts from a given domain are interrelated. Despite their clear potential as a backbone for explainable AI, existing ontologies tend to be highly incomplete, which acts as a significant barrier to their more…

Artificial Intelligence · Computer Science 2021-05-12 Steven Schockaert , Yazmín Ibáñez-García , Víctor Gutiérrez-Basulto

Session types capture precise protocol structure in concurrent programming, but do not specify properties of the exchanged values beyond their basic type. Refinement types are a form of dependent types that can address this limitation,…

Logic in Computer Science · Computer Science 2012-11-20 Pedro Baltazar , Dimitris Mostrous , Vasco T. Vasconcelos

Process mining techniques such as process discovery and conformance checking provide insights into actual processes by analyzing event data that are widely available in information systems. These data are very valuable, but often contain…

Cryptography and Security · Computer Science 2020-09-25 Majid Rafiei , Wil M. P. van der Aalst

In dependently typed programming, proofs of basic, structural properties can be embedded implicitly into programs and do not need to be written explicitly. Besides saving the effort of writing separate proofs, a most distinguishing and…

Programming Languages · Computer Science 2021-03-09 Hsiang-Shang Ko

Textual analytics based on representations of documents as bags of words have been reasonably successful. However, analysis that requires deeper insight into language, into author properties, or into the contexts in which documents were…

Computation and Language · Computer Science 2018-06-15 D. B. Skillicorn , N. Alsadhan

At the heart of intuitionistic type theory lies an intuitive semantics called the "meaning explanations"; crucially, when meaning explanations are taken as definitive for type theory, the core notion is no longer "proof" but "verification".…

Logic in Computer Science · Computer Science 2016-07-18 Jonathan Sterling