Intro
Reading some things and found ExtendJ, very nice tool. There is actually a paper [2].
Multiplicities: the idea programing with one object the same way you deal with many.
ExtendJ
Developed by Jesper Öqvist and other students, they implemented a series of extentions on Java. For example the Spread method. You do one thing the same way you do the many objects.
For them to do this, they implemented the @any operator.
Example of making several people work at the same time!
People A = new People(“A”)
People B = new People(“B”)
@any
peoples.work();
status = A.status();
In this case status is equals to working!! AMAZING! But ExtendJ is more power and helps to build extentions to Java code, for example Data Flow analysis and other mechanisms above – extending – Java, basically providing hook points so you can attach your extentions, i.e. extention points.
The original website is this [3] and the source here is [4].
Citation
@inproceedings{Oqvist:2018:EEJ:3191697.3213798, author = {\"{O}qvist, Jesper}, title = {ExtendJ: Extensible Java Compiler}, booktitle = {Conference Companion of the 2Nd International Conference on Art, Science, and Engineering of Programming}, series = {Programming\&\#39;18 Companion}, year = {2018}, isbn = {978-1-4503-5513-1}, location = {Nice, France}, pages = {234--235}, numpages = {2}, url = {http://doi.acm.org/10.1145/3191697.3213798}, doi = {10.1145/3191697.3213798}, acmid = {3213798}, publisher = {ACM}, address = {New York, NY, USA}, keywords = {Compiler Generators, Extensible Compilers, Reference Attribute Grammars}, }
REFs
[1] https://www.youtube.com/watch?v=jP76MF59mgo
[2] ExtendJ: extensible Java compiler
[3] https://extendj.org/getting_started.html