arrow
返回

Efficient runtime metaprogramming services for Java

delete2019-07-01
delete4
delete
OA
AI
I
Ignacio Lagartos
J
José Manuel Redondo
F
Francisco Ortín *
DOI:10.1016/j.jss.2019.04.030delete
delete原文链接
delete分享
delete收藏
查看原文
摘要

摘要

En 中文
The Java programming language and platform provide many optimizations to execute statically typed code efficiently. Although Java has gradually incorporated more dynamic features across its versions, it does not provide several metaprogramming features supported by most dynamic languages, such as structural intercession (the ability to dynamically modify the structure of classes) and dynamic code generation. Therefore, we propose a method to add those metaprogramming features to Java in order to increase its runtime adaptiveness, while taking advantage of the robustness of its static type system and the performance of its virtual machine. We support the dynamic addition, deletion and replacement of class methods and fields, and dynamic code generation. The metaprogramming services are provided as a library, so neither the Java language nor its virtual machine are modified. We evaluate our system, called JMPLib, and compare it with the existing metaprogramming systems for the Java platform and other highly optimized dynamic languages. JMPLib obtains similar runtime performance to the existing fastest system that modifies the implementation of the Java virtual machine. Moreover, our system introduces no performance penalty when metaprogramming is not used, and consumes fewer memory resources than the rest of implementations for the Java platform. (C) 2019 Elsevier Inc. All rights reserved.
Keyword:
Metaprogramming
Structural intercession
Static type checking
Dynamic code evaluation
Code instrumentation
Runtime performance
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

Journal of Systems and Software 封面图
Journal of Systems and Software
IF:
4.1
论文数:
5.5K
被引数:
8.4K

机构

U
University of Oviedo
学者数:
1.1W
论文数: 1.0W
被引数: 15
引用论文

引用论文

New insights into ribosomal DNA variation in apomictic and sexualTaraxacum(Asteraceae)
err2021-12-23
err0
PREAI
errPetra Macháčková; Ľuboš Majeský; Michal Hroneš; Lucie Bílková; Eva Hřibová; Radim J Vašut
err分享
err收藏
err分享
err收藏
A Comprehensive Evaluation of Common Python Implementations
err2015-07-01
err25
PREAI
errRedondo, Jose Manuel; Ortin, Francisco
err分享
err收藏
The Runtime Performance of invokedynamic: An Evaluation with a Java Library
err2014-07-01
err17
PREAI
errOrtin, Francisco; Conde, Patricia; Fernandez-Lanvin, Daniel; Izquierdo, Raul
err分享
err收藏
err分享
err收藏
Low-disruptive dynamic updating of Java applications
err2014-09-01
err23
PREAI
errGu, Tianxiao; Cao, Chun; Xu, Chang; Ma, Xiaoxing; Zhang, Linghao; Lu, Jian
err分享
err收藏
没有更多内容