skip to main content
10.1145/2633301.2633306acmotherconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
research-article

The GOOL system: a lightweight object-oriented programming language translator

Published: 28 July 2014 Publication History

Abstract

The GOOL system is a lightweight translator between OOP languages (Java, C++, C#, Objective C, ...). It relies upon a minimal, abstract OOP language called GOOL (General Object-Oriented Language) in order to represent the common features between these languages.

References

[1]
Versant Developer Community. "Sharpen, an Eclipse plugin to convert Java into C#".
[2]
Eclipse Labs. "J2C, Java to C++ converter (Eclipse plugin)".
[3]
Chris Laffra. "C2J, a C++ to Java translator".
[4]
Frank Buddrus and Jörg Schödel. 1998. "Cappuccino -- A C++ to Java translator". In Proceedings of the 1998 ACM symposium on Applied Computing (SAC '98). ACM, New York, NY, USA, 660--665. DOI=10.1145/330560.331015
[5]
Scott Malabarba, Premkumar Devanbu, and Aaron Stearns. 1999. "MoHCA-Java: a tool for C++ to Java conversion support". In Proceedings of the 21st international conference on Software engineering (ICSE '99). ACM, New York, NY, USA, 650--653. DOI=10.1145/302405.302918
[6]
Tangible Software Solutions Inc. "Source code conversion tools and source code conversion projects".
[7]
Varycode Inc. "Programming code conversions between different programming languages".
[8]
Remotesoft Inc. "Octopus .NET Translator".
[9]
Microsoft Inc. "Java Language Conversion Assistant 2.0".
[10]
Atsushi Igarashi, Benjamin C. Pierce, Philip Wadler, "Featherweight Java: A Minimal Core Calculus for Java and GJ", ACM Trans. Program. Lang. Syst. 23(3) 396--450, (2001).
[11]
V. David, A. Demaille, R. Durlin and O. Gournet. 2005. "C/C++ Disambiguation Using Attribute Grammars". Project Transformers, Utrecht University, Netherland.
[12]
J. Gosling, B. Joy, and G. Steele. "The Java Language Specification".
[13]
Michael Lee Scott. "Programming Language Pragmatics".
[14]
Piatov, Danila, Janes, Andrea, Sillitti, Alberto, et al." Using the Eclipse C/C++ Development Tooling as a Robust, Fully Functional, Actively Maintained, Open Source C++ Parser". OSS, 2012, vol. 378, p. 399.
[15]
M. Kucera, IBM Toronto Software Lab. "Parsing and Analyzing C/C++ code in Eclipse".
[16]
The openjdk project page. "http://openjdk.java.net".
[17]
The GOOL project page. "https://github.com/librecoop/GOOL".
[18]
Klein, Gerwin, Loetzbeyer, Heiko, Nipkow, Tobias, et al. "IMP--A WHILE-language and its Semantics". 2011.
[19]
Alex Aiken. "The Cool Reference Manual". University of Stanford.
[20]
G. Rosu and T. F. Serbanuta. "KOOL -- Untyped". University of Illinois at Urbana-Champaign.
[21]
Roland Ducournau, Jean Privat, "Metamodeling semantics of multiple inheritance", Science of Computer Programming, 76(7), 555--586, (2011).
[22]
Jens Palsberg and Michael I. Schwartzbach. 1991. "Object-oriented type inference". SIGPLAN Not. 26, 11 (November 1991), 146--161. DOI=10.1145/118014.117965
[23]
Graver, Justin Owen. "Type-checking and type-inference for object-oriented programming languages." 1989. Thse de doctorat. University of Illinois.
[24]
Kontogiannis, Kostas, Martin, Johannes, Wong, Kenny, et al. "Code migration through transformations: An experience report". In: CASCON First Decade High Impact Papers. IBM Corp., 2010. p. 201--213.
[25]
Terekhov, Andrey A. et Verhoef, Chris. "The realities of language conversion"s. IEEE Software, 2000, vol. 17, no 6, p. 111--124.

Cited By

View all
  • (2020)Improving mobile app development using transpilers with maintainable outputsProceedings of the XXXIV Brazilian Symposium on Software Engineering10.1145/3422392.3422426(354-363)Online publication date: 21-Oct-2020

Index Terms

  1. The GOOL system: a lightweight object-oriented programming language translator

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Other conferences
      ICOOOLPS '14: Proceedings of the 9th International Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems PLE
      July 2014
      42 pages
      ISBN:9781450329149
      DOI:10.1145/2633301
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

      Sponsors

      • Uppsala University, Department of Information Science: Uppsala University, Department of Information Science
      • AITO: Assoc Internationale por les Technologies Objects

      In-Cooperation

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 28 July 2014

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. code migration
      2. porting

      Qualifiers

      • Research-article

      Conference

      ECOOP '14
      Sponsor:
      • Uppsala University, Department of Information Science
      • AITO

      Acceptance Rates

      Overall Acceptance Rate 11 of 14 submissions, 79%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)2
      • Downloads (Last 6 weeks)1
      Reflects downloads up to 23 Jan 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2020)Improving mobile app development using transpilers with maintainable outputsProceedings of the XXXIV Brazilian Symposium on Software Engineering10.1145/3422392.3422426(354-363)Online publication date: 21-Oct-2020

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media