BatakJava']Java: An Object-Oriented Programming Language with Versions

被引:1
|
作者
Lubis, Luthfan Anshar [1 ]
Tanabe, Yudai [1 ]
Aotani, Tomoyuki [2 ]
Masuhara, Hidehiko [1 ]
机构
[1] Tokyo Inst Technol, Tokyo, Japan
[2] Mamezou Co Ltd, Tokyo, Japan
关键词
backward compatibility; dependency problem; !text type='Java']Java[!/text;
D O I
10.1145/3567512.3567531
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Programming with versions is a recent proposal that supports multiple versions of software components in a program. Though it would provide greater freedom for the programmer, the concept is only realized as a simple core calculus, called..VL, where a value consists of lambda-terms with multiple versions. We explore a design space of programming with versions in the presence of data structures and module systems, and propose BatakJava, an object-oriented programming language in which multiple versions of a class can be used in a program. This paper presents BatakJava's language design, its core semantics with subject reduction, an implementation as a source-to-Java translator, and a case study to understand how we can exploit multiple versions in BatakJava for developing an application program with an evolving library.
引用
收藏
页码:222 / 234
页数:13
相关论文
共 50 条
  • [1] OBJECT-ORIENTED PROGRAMMING WITHOUT AN OBJECT-ORIENTED LANGUAGE
    BOOCH, G
    SEIDEWITZ, E
    START, M
    FIRESMITH, D
    SIGPLAN NOTICES, 1986, 21 (11): : 508 - 508
  • [2] Object-oriented database programming in Java']Java
    Ege, RK
    TECHNOLOGY OF OBJECT-ORIENTED LANGUAGES AND SYSTEMS - TOOLS 34, PROCEEDINGS, 2000, : 441 - 441
  • [3] Brief Discuss the Application of Object-oriented in Java']Java Language Programming Course
    You, Xin-hua
    Xiong, Chun-xiu
    Zhang, Peng
    2018 3RD INTERNATIONAL CONFERENCE ON AUTOMATION, MECHANICAL AND ELECTRICAL ENGINEERING (AMEE 2018), 2018, 298 : 544 - 548
  • [4] Introduction to concurrent object-oriented programming in Java']Java
    Holmes, D
    Lea, D
    TECHNOLOGY OF OBJECT-ORIENTED LANGUAGES - TOOLS 33, PROCEEDINGS, 2000, : 457 - 457
  • [5] Is Java']JavaScript an object-oriented language?
    McKenzie, N
    DR DOBBS JOURNAL, 2001, 26 (08): : 115 - 116
  • [6] Eolang: Toward a New Java']Java-Based Object-Oriented Programming Language
    Saleh, Hadi
    Zykov, Sergey
    Legalov, Alexander
    INTELLIGENT DECISION TECHNOLOGIES, KES-IDT 2021, 2021, 238 : 355 - 363
  • [7] OBJECT-ORIENTED PROGRAMMING IN ASSEMBLY LANGUAGE
    HYDE, RL
    DR DOBBS JOURNAL, 1990, 15 (03): : 66 - &
  • [8] A LAYERED OBJECT-ORIENTED PROGRAMMING LANGUAGE
    CLARK, AN
    GEC JOURNAL OF RESEARCH, 1994, 11 (03): : 173 - 180
  • [9] A LANGUAGE FOR OBJECT-ORIENTED DATABASE PROGRAMMING
    LAENENS, E
    VERMEIR, D
    JOURNAL OF OBJECT-ORIENTED PROGRAMMING, 1989, 1 (05): : 18 - 27
  • [10] Logic Java']Java: Combining Object-Oriented and Logic Programming
    Majchrzak, Tim A.
    Kuchen, Herbert
    FUNCTIONAL AND CONSTRAINT LOGIC PROGRAMMING, 2011, 6816 : 122 - 137