English

jUCM: Universal Class Morphing (position paper)

Programming Languages 2015-06-18 v1

Abstract

We extend prior work on class-morphing to provide a more expressive pattern-based compile-time reflection language. Our MorphJ language offers a disciplined form of metaprogramming that produces types by statically iterating over and pattern-matching on fields and methods of other types. We expand such capabilities with "universal morphing", which also allows pattern-matching over types (e.g., all classes nested in another, all supertypes of a class) while maintaining modular type safety for our meta-programs. We present informal examples of the functionality and discuss a design for adding universal morphing to Java.

Keywords

Cite

@article{arxiv.1506.05270,
  title  = {jUCM: Universal Class Morphing (position paper)},
  author = {Aggelos Biboudis and George Fourtounis and Yannis Smaragdakis},
  journal= {arXiv preprint arXiv:1506.05270},
  year   = {2015}
}
R2 v1 2026-06-22T09:55:08.527Z