IJITCS Vol. 15, No. 4, 8 Aug. 2023
Cover page and Table of Contents: PDF (size: 347KB)
Full Text (PDF, 347KB), PP.50-62
Views: 0 Downloads: 0
Java, Interoperability, Libraries, Python, Socket Programming
Programming language interoperability is highly desirable for a variety of reasons, such as the fact that if a programmer implements specific functionality that has previously been implemented in another language, the software component can simply be reused. Because they are particularly well-suited and efficient at implementing features, certain languages regularly arise to handle issue areas. There are numerous third-party programs available for a variety of languages. When programmers have experience with and preferences for several programming languages, collaboration on complex projects is easier. A range of techniques and methods have been used to handle various cross-language communication challenges. The importance of interoperability and cross-language communication between Java and Python via socket programming is examined in this research article through an empirical model of different execution environment paradigms that can help guide the development of improved approaches for integrating Python libraries with Java without the need for extra libraries or third-party libraries. The interoperability strategy benefits from the quality and availability of Python libraries in Java by cutting down on development time, maintenance needs, general usability, upkeep, and system integration without incurring additional costs. It is versatile to use this interoperability strategy since identical scripts are run in Java client contexts in the same way that they were used in Python. There are different Python modules used in the research article to exemplify and evaluate the expressions, built-in functions, strings, collections, data exploration, statistical data analysis using NumPy, SciPy, and Pandas, and Scikit-Learn for machine learning with linear regression.
Bala Dhandayuthapani V., "Implementation of Python Interoperability in Java through TCP Socket Communication", International Journal of Information Technology and Computer Science(IJITCS), Vol.15, No.4, pp.50-62, 2023. DOI:10.5815/ijitcs.2023.04.05
[1]K. Kratchanov and E. Ergün, “Language Interoperability in Control Network Programming,” vol. 7, no. 78, pp. 79–90, 2018.
[2]K. Kratchanov, “Language Interoperability in Control Network Programming 1 Language interoperability modern programming practice in 2 Control Network Programming,” vol. 6, pp. 1–13, 2021.
[3]Sommprasad, “Overview of Cloud interoperability and portability,” 2021. https://www.geeksforgeeks.org/overview-of-cloud-interoperability-and-portability/
[4]H.-A. Jacobsen, “Programming Language Interoperability in Distributed Computing Environments,” Distrib. Appl. Interoper. Syst. II, pp. 287–300, 1999, doi: 10.1007/978-0-387-35565-8_24.
[5]T. F. Bissyande, F. Thung, D. Lo, L. Jiang, and L. Reveillere, “Popularity, interoperability, and impact of programming languages in 100,000 open-source projects,” Proc. - Int. Comput. Softw. Appl. Conf., pp. 303–312, 2013, doi: 10.1109/COMPSAC.2013.55.
[6]C. Study, E. Master, and M. Br, “Object Oriented Language Interoperability,” no. May 2004.
[7]D. Chisnall, “The challenge of CCross-languageInteroperability,” Queue, vol. 11, no. 10, pp. 20–28, 2013, doi: 10.1145/2542661.2543971.
[8]A. Cleary, S. Kohn, S. G. Smith, and B. Smolinski, “Language interoperability mechanisms for high-performance scientific applications.,”Object-Oriented Methods Interoper. Sci. Eng. Comput. (Proceedings Appl. Mathematics, 99), 1999, [Online]. Available: https://e-reports-ext.llnl.gov/pdf/234999.pdf
[9]R. S. Maciel, J. M. David, D. Claro, and R. Braga, “Full Interoperability: Challenges and Opportunities for Future Information Systems,” I Gd. Gd. Desafios da Pesqui. em Sist. Informação no Bras. para o período 2016 a 2026, pp. 107–118, 2017, doi: 10.5753/sbc.2884.0.9.
[10]T. Ekman, P. Mechlenborg, and U. P. Schultz, “Flexible language interoperability,” J. Object Technol., vol. 6, no. 8, pp. 95–116, 2007, doi: 10.5381/jot.2007.6.8.a2.
[11]T. Malone and T. Malone, “Scholarly Horizons : University of Minnesota , Morris Interoperability in Programming Languages Interoperability in Programming Languages,” vol. 1, no. 2, pp. 1–7, 2014.
[12]A. Nguyen, “Programming Language interoperability in cross-platform software development Anh Nguyen,” 2022.
[13]B. Pillai, K. Biswas, Z. Hou, and V. Muthukkumarasamy, “Level of conceptual interoperability model for blockchain based systems,” IEEE Int. Conf. Blockchain Cryptocurrency Crosschain Work. ICBC-CROSS 2022, 2022, doi: 10.1109/ICBC-CROSS54895.2022.9793328.
[14]T. Y. Shevgunov and G. V. Malshakov, “Method of Achieving Interoperability of Applied Software Based on the Analysis of Their Data,” 2020 Syst. Signals Gener. Process. F. Board Commun., 2020, doi: 10.1109/IEEECONF48371.2020.9078549.
[15]K. Afsari, C. Eastman, and D. Shelden, “Building information modeling data interoperability for cloud-based collaboration: Limitations and opportunities,” Int. J. Archit. Comput., vol. 15, no. 3, pp. 187–202, 2017, doi: 10.1177/1478077117731174.
[16]N. Loutas, E. Kamateri, F. Bosi, and K. Tarabanis, “Cloud computing interoperability: The state of play,” Proc. - 2011 3rd IEEE Int. Conf. Cloud Comput. Technol. Sci. CloudCom 2011, pp. 752–757, 2011, doi: 10.1109/CloudCom.2011.116.
[17]C. Computing and S. Committee, IEEE Guide for Cloud Portability and Interoperability Profiles (CPIP). 2020.
[18]D. Elliott, C. Otero, M. Ridley, and X. Merino, “A Cloud-Agnostic Container Orchestrator for Improving Interoperability,” IEEE Int. Conf. Cloud Comput. CLOUD, vol. 2018-July, pp. 958–961, 2018, doi: 10.1109/CLOUD.2018.00145.
[19]M. Grimmer, R. Schatz, C. Seaton, T. Würthinger, and M. Luján, “Cross-language interoperability in a multi-language runtime,” ACM Trans. Program. Lang. Syst., vol. 40, no. 2, 2018, doi: 10.1145/3201898.
[20]E. Rykun, “Integrating Python with Java,” 2020. https://devm.io/python/integrating-python-with-java-170663
[21]“How to Call Python from Java,” Jonathan Cook, 2020. https://www.baeldung.com/java-working-with-python
[22]“What is Jython?,” 2022, [Online]. Available: https://www.jython.org/
[23]“Py4J - A Bridge between Python and Java,” 2022. https://www.py4j.org/
[24]“JPype User Guide,” 2018. https://jpype.readthedocs.io/en/latest/userguide.html
[25]Dr. Bala Dhandayuthapani V., “Python-interoperability-Java,” GitHub. https://github.com/profdrbala/Python-interoperability -Java