Learning Code Transformations Via Neural Machine Translation

Download Learning Code Transformations Via Neural Machine Translation PDF/ePub or read online books in Mobi eBooks. Click Download or Read Online button to get Learning Code Transformations Via Neural Machine Translation book now. This website allows unlimited access to, at the time of writing, more than 1.5 million titles, including hundreds of thousands of titles in various foreign languages.
Learning Code Transformations Via Neural Machine Translation

Source code evolves – inevitably – to remain useful, secure, correct, readable, and efficient. Developers perform software evolution and maintenance activities by transforming existing source code via corrective, adaptive, perfective, and preventive changes. These code changes are usually managed and stored by a variety of tools and infrastructures such as version control, issue trackers, and code review systems. Software Evolution and Maintenance researchers have been mining these code archives in order to distill useful insights on the nature of such developers’ activities. One of the long-lasting goal of Software Engineering research is to better support and automate different types of code changes performed by developers. In this thesis we depart from classic manually crafted rule- or heuristic-based approaches, and propose a novel technique to learn code transformations by leveraging the vast amount of publicly available code changes performed by developers. We rely on Deep Learning, and in particular on Neural Machine Translation (NMT), to train models able to learn code change patterns and apply them to novel, unseen, source code. First, we tackle the problem of generating source code mutants for Mutation Testing. In contrast with classic approaches, which rely on handcrafted mutation operators, we propose to automatically learn how to mutate source code by observing real faults. We mine millions of bug fixing commits from GitHub, process and abstract their source code. This data is used to train and evaluate an NMT model to translate fixed code into buggy code (i.e., the mutated code). In the second project, we rely on the same dataset of bug-fixes to learn code transformations for the purpose of Automated Program Repair (APR). This represents one of the most challenging research problem in Software Engineering, whose goal is to automatically fix bugs without developers’ intervention. We train a model to translate buggy code into fixed code (i.e., learning patches) and, in conjunction with Beam Search, generate many different potential patches for a given buggy method. In our empirical investigation we found that such a model is able to fix thousands of unique buggy methods in the wild.Finally, in our third project we push our novel technique to the limits and enlarge the scope to consider not only bug-fixing activities, but any type of meaningful code changes performed by developers. We focus on accepted and merged code changes that undergone a Pull Request (PR) process. We quantitatively and qualitatively investigate the code transformations learned by the model to build a taxonomy. The taxonomy shows that NMT can replicate a wide variety of meaningful code changes, especially refactorings and bug-fixing activities. In this dissertation we illustrate and evaluate the proposed techniques, which represent a significant departure from earlier approaches in the literature. The promising results corroborate the potential applicability of learning techniques, such as NMT, to a variety of Software Engineering tasks.
Computational Science and Its Applications – ICCSA 2022 Workshops

The eight-volume set LNCS 13375 – 13382 constitutes the proceedings of the 22nd International Conference on Computational Science and Its Applications, ICCSA 2022, which was held in Malaga, Spain during July 4 – 7, 2022. The first two volumes contain the proceedings from ICCSA 2022, which are the 57 full and 24 short papers presented in these books were carefully reviewed and selected from 279 submissions. The other six volumes present the workshop proceedings, containing 285 papers out of 815 submissions. These six volumes includes the proceedings of the following workshops: Advances in Artificial Intelligence Learning Technologies: Blended Learning, STEM, Computational Thinking and Coding (AAILT 2022); Workshop on Advancements in Applied Machine-learning and Data Analytics (AAMDA 2022); Advances in information Systems and Technologies for Emergency management, risk assessment and mitigation based on the Resilience (ASTER 2022); Advances in Web Based Learning (AWBL 2022); Blockchain and Distributed Ledgers: Technologies and Applications (BDLTA 2022); Bio and Neuro inspired Computing and Applications (BIONCA 2022); Configurational Analysis For Cities (CA Cities 2022); Computational and Applied Mathematics (CAM 2022), Computational and Applied Statistics (CAS 2022); Computational Mathematics, Statistics and Information Management (CMSIM); Computational Optimization and Applications (COA 2022); Computational Astrochemistry (CompAstro 2022); Computational methods for porous geomaterials (CompPor 2022); Computational Approaches for Smart, Conscious Cities (CASCC 2022); Cities, Technologies and Planning (CTP 2022); Digital Sustainability and Circular Economy (DiSCE 2022); Econometrics and Multidimensional Evaluation in Urban Environment (EMEUE 2022); Ethical AI applications for a human-centered cyber society (EthicAI 2022); Future Computing System Technologies and Applications (FiSTA 2022); Geographical Computing and Remote Sensing for Archaeology (GCRSArcheo 2022); Geodesign in Decision Making: meta planning and collaborative design for sustainable and inclusive development (GDM 2022); Geomatics in Agriculture and Forestry: new advances and perspectives (GeoForAgr 2022); Geographical Analysis, Urban Modeling, Spatial Statistics (Geog-An-Mod 2022); Geomatics for Resource Monitoring and Management (GRMM 2022); International Workshop on Information and Knowledge in the Internet of Things (IKIT 2022); 13th International Symposium on Software Quality (ISSQ 2022); Land Use monitoring for Sustanability (LUMS 2022); Machine Learning for Space and Earth Observation Data (MALSEOD 2022); Building multi-dimensional models for assessing complex environmental systems (MES 2022); MOdels and indicators for assessing and measuring the urban settlement deVElopment in the view of ZERO net land take by 2050 (MOVEto0 2022); Modelling Post-Covid cities (MPCC 2022); Ecosystem Services: nature’s contribution to people in practice. Assessment frameworks, models, mapping, and implications (NC2P 2022); New Mobility Choices For Sustainable and Alternative Scenarios (NEMOB 2022); 2nd Workshop on Privacy in the Cloud/Edge/IoT World (PCEIoT 2022); Psycho-Social Analysis of Sustainable Mobility in The Pre- and Post-Pandemic Phase (PSYCHE 2022); Processes, methods and tools towards RESilient cities and cultural heritage prone to SOD and ROD disasters (RES 2022); Scientific Computing Infrastructure (SCI 2022); Socio-Economic and Environmental Models for Land Use Management (SEMLUM 2022); 14th International Symposium on Software Engineering Processes and Applications (SEPA 2022); Ports of the future - smartness and sustainability (SmartPorts 2022); Smart Tourism (SmartTourism 2022); Sustainability Performance Assessment: models, approaches and applications toward interdisciplinary and integrated solutions (SPA 2022); Specifics of smart cities development in Europe (SPEED 2022); Smart and Sustainable Island Communities (SSIC 2022); Theoretical and Computational Chemistryand its Applications (TCCMA 2022); Transport Infrastructures for Smart Cities (TISC 2022); 14th International Workshop on Tools and Techniques in Software Development Process (TTSDP 2022); International Workshop on Urban Form Studies (UForm 2022); Urban Regeneration: Innovative Tools and Evaluation Model (URITEM 2022); International Workshop on Urban Space and Mobilities (USAM 2022); Virtual and Augmented Reality and Applications (VRA 2022); Advanced and Computational Methods for Earth Science Applications (WACM4ES 2022); Advanced Mathematics and Computing Methods in Complex Computational Systems (WAMCM 2022).
Digital Transformation and Sustainability of Business

It explores the integration of digital technologies into business models, offering innovative approaches for sustainable growth. This comprehensive guide delves into case studies and strategic frameworks that align digital transformation with environmental and economic sustainability. It presents actionable insights on overcoming challenges, leveraging technology for efficiency, and fostering a competitive edge. Designed for industry leaders, researchers, and policymakers, the book provides evidence-based strategies supported by real-world applications, making it an essential resource for those looking to drive meaningful change in today’s evolving business landscape.