JAVA MODULAR EXTENSION FOR OPERATOR OVERLOADING

Saved in:
Bibliographic Details
Title: JAVA MODULAR EXTENSION FOR OPERATOR OVERLOADING
Authors: Artem Melentyev
Publisher Information: Zenodo
Publication Year: 2020
Collection: Zenodo
Subject Terms: Java compilers, operator overloading, language extension, compiler plugin, Integrated Development Environment
Description: The paper introduces a modular extension (plugin) for Java language compilers and Integrated Development Environments (IDE) which adds operator overloading feature to Java language while preserving backward compatibility. The extension use the idea of library-based language extensibility similar to SugarJ[1]. But unlike most language extensions, it works directly inside the compiler and does not have any external preprocessors. This gives much faster compilation, better language compatibility and support of native developer tools (IDE, build tools). The extension plugs into javac and Eclipse Java compilers as well as in all tools whose use the compilers such as IDEs (Netbeans, Eclipse, IntelliJ IDEA), build tools (ant, maven, gradle), etc. No compiler, IDE, build tools modification needed. Just add a jar library to classpath and/or install a plugin to your IDE. The paper also discuss on how to build such Java compiler extensions. The extension source code is open on http://amelentev.github.io/java-oo/
Document Type: article in journal/newspaper
Language: English
Relation: https://zenodo.org/records/4074708; oai:zenodo.org:4074708; https://doi.org/10.5281/zenodo.4074708
DOI: 10.5281/zenodo.4074708
Availability: https://doi.org/10.5281/zenodo.4074708
https://zenodo.org/records/4074708
Rights: Creative Commons Attribution 4.0 International ; cc-by-4.0 ; https://creativecommons.org/licenses/by/4.0/legalcode
Accession Number: edsbas.B22DF1F6
Database: BASE
Description
Abstract:The paper introduces a modular extension (plugin) for Java language compilers and Integrated Development Environments (IDE) which adds operator overloading feature to Java language while preserving backward compatibility. The extension use the idea of library-based language extensibility similar to SugarJ[1]. But unlike most language extensions, it works directly inside the compiler and does not have any external preprocessors. This gives much faster compilation, better language compatibility and support of native developer tools (IDE, build tools). The extension plugs into javac and Eclipse Java compilers as well as in all tools whose use the compilers such as IDEs (Netbeans, Eclipse, IntelliJ IDEA), build tools (ant, maven, gradle), etc. No compiler, IDE, build tools modification needed. Just add a jar library to classpath and/or install a plugin to your IDE. The paper also discuss on how to build such Java compiler extensions. The extension source code is open on http://amelentev.github.io/java-oo/
DOI:10.5281/zenodo.4074708