1st International Conference on Open Source Software Computing (OSSCOM 2015) Toward Open-source Compilers in a Cloud-based Environment: The Need and Current Challenges Presenting Author: Taher Ahmed Ghaleb Contact: g201106210@kfupm.edu.sa Index 2 Introduction Related work The required framework Discussion Prospective features Target stakeholders Potential challenges Conclusion Introduction 3 Problems of Conventional Compilers Being installed Platform independent Compatibility Portability Updates Being closed-source Extensibility Creating new languages. Bug fixing. Related work 4 Open-Source Compilers Amsterdam Compiler Kit (ACK)[4], 1983 Open64[5] and GNU Compiler Collection[6] Polyglot[7], JastAdd[9], abc[10], etc. Online repositories for Open-Source Programs GitHub, SourceForge, CodePlex, etc. Cloud-based Compilers Cloud compiler fro C/C++ [17]. Browser-based IDE [18]. Online compilers: CompileOnline, Ideone, CodeChef, etc. The Required Framework 5 The Required Framework (2) 6 Portal & Dashboard Layer Project Management Layer Collaboration Layer Web-based Interface Layer Compilation Layer Prospective Features Prospective Features 7 Accessibility Portability Extensibility Self-updated Efficient Processing Code Sharing Collaborative & Real-time Team-work Programming Target Stakeholders 8 Academic Institutions Developers Researchers Potential Challenges 9 File System Networking APIs GUI-based Programs Security Issues Conclusion and Future Work 10 A combination of two aspects (Open-source & Cloud) computing for compilers. Future recommendations: Real-world implementation and deployment. Further investigation of the features provided by current cloud-based compilers. Use of the shelf (existing open-source compilers and cloud- based repositories and hosting providers). References 11 [1] M. S.Andreasen, H. V.Nielsen, S. O.Schrøder, and J.Stage, “Usability in open source software development: Opinions and practice,” Information technology and control, vol. 35, no. 3, 2015. [2] Y.Zhou and J.Davis, “Open source software reliability model: an empirical approach,” in ACM SIGSOFT Software Engineering Notes, vol. 30, no. 4. ACM, 2005, pp. 1–6. [3] J.Feller and B.Fitzgerald, “A framework analysis of the open source software development paradigm,” in Proceedings of the twenty first international conference on Information systems. Association for Information Systems, 2000, pp. 58–69. [4] A. S.Tanenbaum, H.Van Staveren, E.Keizer, and J. W.Stevenson, “A practical tool kit for making portable compilers,” Communications of the ACM, vol. 26, no. 9, pp. 654–660, 1983. [5] “The Open64 compiler.” [Online]. Available: http://open64.sourceforge.net Last visited: August, 2015. [6] “GCC, the GNU compiler collection.” [Online]. Available: https://gcc.gnu.org Last visited: August, 2015. [7] N.Nystrom, M. R.Clarkson, and A. C.Myers, “Polyglot: An extensible compiler framework for Java,” in Compiler Construction. Springer, 2003, pp. 138–152. [8] M.Tatsubori, S.Chiba, M.-O.Killijian, and K.Itano, “Openjava: A classbased macro system for java,” in Reflection and Software Engineering. Springer, 2000, pp. 117–133. [9] G.Hedin and E.Magnusson, “JastAdd–an aspect-oriented compiler construction system,” Science of Computer Programming, vol. 47, no. 1, pp. 37–58, 2003. [10] P.Avgustinov et al., “abc: An extensible aspectj compiler,” in Transactions on Aspect-Oriented Software Development I. Springer, 2006, pp. 293–334. [11] D.Greschler and T.Mangan, “Networking lessons in delivering software as a servicepart i,” International Journal of Network Management, vol. 12, no. 5, pp. 317–321, 2002. References 11 [12] “The Roslyn project.” [Online]. Available: http://msdn.microsoft.com/en-us/hh500769 [Last visited: August, 2015. [13] “List of open source compilers.” [Online]. Available: https://en.wikipedia.org/wiki/List of compilers#Open source compilers Last visited: August, 2015. [14] “Polyglot example extensions.” [Online]. Available: http://www.cs.cornell.edu/projects/polyglot Last visited: August, 2015. [15] “JastAdd example extensions.” [Online]. Available: http://jastadd.org/web/examples Last visited: August, 2015. [16] “abc example extensions.” [Online]. Available: http://www.sable.mcgill.ca/abc/projectsexts Last visited: August, 2015. [17] A. N.Ansari, S.Patil, A.Navada, A.Peshave, and V.Borole, “Online c/c++ compiler using cloud computing,” in Multimedia Technology (ICMT), 2011 International Conference on. IEEE, 2011, pp. 3591–3594. [18] N.Raut, D.Parab, S.Sontakke, and S.Hanagandi, “Cloud documentation and centralized compiler for java & php,” International Journal Of Computational Engineering Research (ijceronline. com) Vol, vol. 3, no. 3, 2013. [19] R.Calvo, S.O’Rourke, J.Jones, K.Yacef, and P.Reimann, “Collaborative writing support tools on the cloud,” Learning Technologies, IEEE Transactions on, vol. 4, no. 1, pp. 88–97, 2011. [20] E.Kruglick, “Compilation of code in a data center,” Mar. 24 2015, US Patent 8,990,788. End. 12 Thanks,! Any Question?