Table of Contents
Fetching ...

Multi-Lingual Development & Programming Languages Interoperability: An Empirical Study

Tsvi Cherny-Shahar, Amiram Yehudai

TL;DR

The paper presents the research results, shows that C is a central pillar in programming language interoperability, and outlines simple interoperability guidelines, which contribute to the multi-programming language interoperability system research.

Abstract

As part of a research on a novel in-process multiprogramming-language interoperability system, this study investigates the interoperability and usage of multiple programming languages within a large dataset of GitHub projects and Stack Overflow Q\&A. It addresses existing multi-lingual development practices and interactions between programming languages, focusing on in-process multi-programming language interoperability. The research examines a dataset of 414,486 GitHub repositories, 22,156,001 Stack Overflow questions from 2008-2021 and 173 interoperability tools. The paper's contributions include a comprehensive dataset, large-scale analysis, and insights into the prevalence, dominant languages, interoperability tools, and related issues in multi-language programming. The paper presents the research results, shows that C is a central pillar in programming language interoperability, and outlines \emph{simple interoperability} guidelines. These findings and guidelines contribute to our multi-programming language interoperability system research, also laying the groundwork for other systems and tools by suggesting key features for future interoperability tools.

Multi-Lingual Development & Programming Languages Interoperability: An Empirical Study

TL;DR

The paper presents the research results, shows that C is a central pillar in programming language interoperability, and outlines simple interoperability guidelines, which contribute to the multi-programming language interoperability system research.

Abstract

As part of a research on a novel in-process multiprogramming-language interoperability system, this study investigates the interoperability and usage of multiple programming languages within a large dataset of GitHub projects and Stack Overflow Q\&A. It addresses existing multi-lingual development practices and interactions between programming languages, focusing on in-process multi-programming language interoperability. The research examines a dataset of 414,486 GitHub repositories, 22,156,001 Stack Overflow questions from 2008-2021 and 173 interoperability tools. The paper's contributions include a comprehensive dataset, large-scale analysis, and insights into the prevalence, dominant languages, interoperability tools, and related issues in multi-language programming. The paper presents the research results, shows that C is a central pillar in programming language interoperability, and outlines \emph{simple interoperability} guidelines. These findings and guidelines contribute to our multi-programming language interoperability system research, also laying the groundwork for other systems and tools by suggesting key features for future interoperability tools.

Paper Structure

This paper contains 10 sections, 7 figures, 1 table.

Figures (7)

  • Figure 1: GitHub Language Statistics
  • Figure 2: GitHub single language statistics
  • Figure 3: GitHub multi-lingual statistics
  • Figure 4: GitHub multi-PL statistics
  • Figure 5: GitHub multi-PL without Web projects programming-languages statistics
  • ...and 2 more figures