English
Related papers

Related papers: Java & Lambda: a Featherweight Story

200 papers

"Extract Method" refactoring is a technique for consolidating code clones. Parameterization approaches are used to extract a single method from multiple code clones that contain differences. This approach parameterizes expressions and…

Software Engineering · Computer Science 2025-12-29 Takuto Kawamoto , Yoshiki Higo

When it was first introduced, the Chips-n-Salsa Java library provided stochastic local search and related algorithms, with a focus on self-adaptation and parallel execution. For the past four years, we expanded its scope to include…

Neural and Evolutionary Computing · Computer Science 2024-12-04 Vincent A. Cicirello

Scala's type system unifies ML modules, object-oriented, and functional programming. The Dependent Object Types (DOT) family of calculi has been proposed as a new foundation for Scala and similar languages. Unfortunately, it is not clear…

Programming Languages · Computer Science 2016-02-08 Tiark Rompf , Nada Amin

We show how to smoothly incorporate in the object-oriented paradigm constructs to raise, compose, and handle effects in an arbitrary monad. The underlying pure calculus is meant to be a representative of the last generation of OO languages,…

Programming Languages · Computer Science 2025-04-23 Francesco Dagnino , Paola Giannini , Elena Zucca

Tabular data learning has extensive applications in deep learning but its existing embedding techniques are limited in numerical and categorical features such as the inability to capture complex relationships and engineering. This paper…

Machine Learning · Computer Science 2024-09-02 Yuqian Wu , Hengyi Luo , Raymond S. T. Lee

Type isomorphism is useful for retrieving library components, since a function in a library can have a type different from, but isomorphic to, the one expected by the user. Moreover type isomorphism gives for free the coercion required to…

Logic in Computer Science · Computer Science 2015-03-18 Mario Coppo , Mariangiola Dezani-Ciancaglini , Ines Margaria , Maddalena Zacchi

On the topic of probabilistic rewriting, there are several works studying both termination and confluence of different systems. While working with a lambda calculus modelling quantum computation, we found a system with probabilistic…

Logic in Computer Science · Computer Science 2022-04-11 Rafael Romero , Alejandro Díaz-Caro

Knowledge-based systems are suitable for realizing advanced functions that require domain-specific expert knowledge, while knowledge representation languages and their supporting environments are essential for realizing such systems.…

Programming Languages · Computer Science 2011-09-06 Masanobu Umeda , Ryoto Naruse , Hiroaki Sone , Keiichi Katamine

Multithreaded programs generally leverage efficient and thread-safe concurrent objects like sets, key-value maps, and queues. While some concurrent-object operations are designed to behave atomically, each witnessing the atomic effects of…

Logic in Computer Science · Computer Science 2019-11-06 Siddharth Krishna , Michael Emmi , Constantin Enea , Dejan Jovanovic

Resolution and subtyping are two common mechanisms in programming languages. Resolution is used by features such as type classes or Scala-style implicits to synthesize values automatically from contextual type information. Subtyping is…

Programming Languages · Computer Science 2020-10-19 Koar Marntirosian , Tom Schrijvers , Bruno C. d. S. Oliveira , Georgios Karachalias

A hypergraph is a generalization of a graph, in which a hyperedge can connect multiple vertices, modeling complex relationships involving multiple vertices simultaneously. Hypergraph pattern matching, which is to find all isomorphic…

Databases · Computer Science 2025-12-23 Siwoo Song , Wonseok Shin , Kunsoo Park , Giuseppe F. Italiano , Zhengyi Yang , Wenjie Zhang

One of the main challenges when verifying multi-threaded Java applications is the state space explosion problem. Due to thread interleavings, the number of states that the model checker has to verify can grow rapidly and impede the…

Software Engineering · Computer Science 2015-03-20 Mateusz Ujma , Nastaran Shafiei

In this article the function overloading in object-oriented programming is elaborated and how they are implemented in C++. The language supports a variety of programming styles. Here we are describing the polymorphism and its types in…

Programming Languages · Computer Science 2013-12-02 Dr. Brijender Kahanwal , Dr. T. P. Singh

The Flexible Job Shop Problem (FJSP) is a well-studied combinatorial optimization problem with extensive applications for manufacturing and production scheduling. It involves assigning jobs to various machines to optimize criteria, such as…

Machine Learning · Computer Science 2026-02-26 Zhi Cao , Cong Zhang , Yaoxin Wu , Yaqing Hou , Hongwei Ge

The Dependent Object Types (DOT) calculus formalizes key features of Scala. The D$_{<: }$ calculus is the core of DOT. To date, presentations of D$_{<: }$ have used declarative typing and subtyping rules, as opposed to algorithmic.…

Programming Languages · Computer Science 2017-09-29 Abel Nieto

This paper describes a reduction from the halting problem of Turing machines to subtype checking in Java. It follows that subtype checking in Java is undecidable, which answers a question posed by Kennedy and Pierce in 2007. It also follows…

Programming Languages · Computer Science 2016-11-08 Radu Grigore

A novel language system has given rise to promising alternatives to standard formal and processor network models of computation. An interstring linked with a abstract machine environment, shares sub-expressions, transfers data, and…

Programming Languages · Computer Science 2010-07-30 Alexander Victor Berka

Due to supporting variance annotations, such as wildcard types, the subtyping relation in Java and other generic nominally-typed OO programming languages is both interesting and intricate. In these languages, the subtyping relation between…

Programming Languages · Computer Science 2018-07-17 Moez A. AbdelGawad

This work introduces JEMA (Joint Embedding with Multimodal Alignment), a novel co-learning framework tailored for laser metal deposition (LMD), a pivotal process in metal additive manufacturing. As Industry 5.0 gains traction in industrial…

Computer Vision and Pattern Recognition · Computer Science 2024-11-01 Joao Sousa , Roya Darabi , Armando Sousa , Frank Brueckner , Luís Paulo Reis , Ana Reis

Decisions on which classes to refactor are fraught with difficulty. The problem of identifying candidate classes becomes acute when confronted with large systems comprising hundreds or thousands of classes. In this paper, we describe a…

Software Engineering · Computer Science 2007-05-23 Richard Wheeldon , Steve Counsell