English
Related papers

Related papers: Java Modular Extension for Operator Overloading

200 papers

Modern software systems heavily rely on external libraries developed by third-parties to ensure efficient development. However, frequent library upgrades can lead to compatibility issues between the libraries and their client systems. In…

Software Engineering · Computer Science 2023-05-16 Xiufeng Xu , Chenguang Zhu , Yi Li

Context: This paper presents the concept of open programming language interpreters and the implementation of a framework-level metaobject protocol (MOP) to support them. Inquiry: We address the problem of dynamic interpreter adaptation to…

Programming Languages · Computer Science 2017-04-03 Walter Cazzola , Albert Shaqiri

Most ML-like functional languages provide records and overloading as unrelated features. Records not only represent data structures, but are also used to implement dictionary passing, whereas overloading produces type constraints that are…

Programming Languages · Computer Science 2024-06-19 Alvise Spanò

Integrating architectural elements with a modern programming language is essential to ensure a smooth combination of architectural design and programming. In this position statement, we motivate a combination of architectural description…

Software Engineering · Computer Science 2014-09-09 Arne Haber , Jan Oliver Ringert , Bernhard Rumpe

Typed Clojure is an optional type system for Clojure, a dynamic language in the Lisp family that targets the JVM. Typed Clojure enables Clojure programmers to gain greater confidence in the correctness of their code via static type checking…

Programming Languages · Computer Science 2018-12-11 Ambrose Bonnaire-Sergeant , Rowan Davies , Sam Tobin-Hochstadt

Overlays are virtual, re-configurable architectures that overlay on top of physical FPGA fabrics. An overlay that is specialized for an application, or a class of applications, offers both fast reconfiguration and minimized performance…

Programming Languages · Computer Science 2020-09-03 Hongbo Rong

Code completion is an important feature of integrated development environments (IDEs). It allows developers to produce code faster, especially novice ones who are not fully familiar with APIs and others code. Previous works on code…

Software Engineering · Computer Science 2020-11-03 M. Weyssow , H. Sahraoui , B. Frénay , B. Vanderose

We introduce program splicing, a programming methodology that aims to automate the commonly used workflow of copying, pasting, and modifying code available online. Here, the programmer starts by writing a "draft" that mixes unfinished code,…

Programming Languages · Computer Science 2017-05-26 Yanxin Lu , Swarat Chaudhuri , Chris Jermaine , David Melski

This paper presents the design and implementation of a modular multi-document interface (MDI) framework for scientific visualization and simulation in the Java Virtual Machine (JVM) ecosystem. The framework emphasizes architectural…

Software Engineering · Computer Science 2026-02-25 David Heddle

In software engineering, a great number of new approaches are being actively researched, and a lot of tools are being developed based on them. These tools require a framework for their creation and an opportunity to be used by potential…

Software Engineering · Computer Science 2021-10-04 Zarina Kurbatova , Yaroslav Golubev , Vladimir Kovalenko , Timofey Bryksin

Recently Java programming environment has become so popular. Java programming language is a language that is designed to be portable enough to be executed in wide range of computers ranging from cell phones to supercomputers. Computer…

Software Engineering · Computer Science 2011-10-18 Rahul Saha , Dr. G. Geetha

Software engineering is extremely information-intensive. Every day developers work with source code, version repositories, issue trackers, documentation, web-based and other information resources. However, three key aspects of information…

Software Engineering · Computer Science 2016-07-18 Dimitar Asenov , Peter Müller , Lukas Vogel

Presented simple extensions to scala language related to import statements: exported imports, which provide ability to reuse sequence of import clauses in composable form and default rewriters, which provide mechanism for pluggable…

Programming Languages · Computer Science 2014-04-15 Ruslan Shevchenko

As an increasing number of software systems reach unprecedented scale, relying solely on code-level abstractions is becoming impractical. While architectural abstractions offer a means to manage these systems, maintaining their consistency…

Software Engineering · Computer Science 2025-12-19 Yirui He , Yuqi Huai , Xingyu Chen , Joshua Garcia

There is a tension in dynamic language runtime design between speed and correctness: state-of-the-art JIT compilation, the result of enormous industrial investment and significant research, achieves heroic speedups at the cost of complexity…

Programming Languages · Computer Science 2024-11-19 Chris Fallin , Maxwell Bernstein

This paper summarizes our experience in communicating the elements of reasoning about correctness, and the central role of formal specifications in reasoning about modular, component-based software using a language and an integrated Web IDE…

Software Engineering · Computer Science 2015-08-20 Nabil M. Kabbani , Daniel Welch , Caleb Priester , Stephen Schaub , Blair Durkee , Yu-Shan Sun , Murali Sitaraman

We present OBJS, a new transpiler project featuring the implementation of typified variables and functions call management in Javascript, as well as several new operators and syntax patterns that could make coding more agile and versatile.…

Programming Languages · Computer Science 2024-11-14 Alessandro Rosa

Integrated development environments (IDEs) are prevalent code-writing and debugging tools. However, they have yet to be widely adopted for launching machine learning (ML) experiments. This work aims to fill this gap by introducing JetTrain,…

Software Engineering · Computer Science 2024-02-19 Artem Trofimov , Mikhail Kostyukov , Sergei Ugdyzhekov , Natalia Ponomareva , Igor Naumov , Maksim Melekhovets

The ROOT software framework is foundational for the HEP ecosystem, providing capabilities such as IO, a C++ interpreter, GUI, and math libraries. It uses object-oriented concepts and build-time components to layer between them. We believe…

Software Engineering · Computer Science 2019-10-02 Oksana Shadura , Brian Paul Bockelman , Vassil Vassilev

The subtyping relation in Java exhibits self-similarity. The self-similarity in Java subtyping is interesting and intricate due to the existence of wildcard types and, accordingly, the existence of three subtyping rules for generic types:…

Programming Languages · Computer Science 2018-01-01 Moez A. AbdelGawad