{"title":"PYDOP:面向增量编程的通用Python库","authors":"Michael Lienhardt","doi":"10.1145/3579028.3609011","DOIUrl":null,"url":null,"abstract":"Delta-Oriented Programming (DOP) is a modular and flexible approach to implement Software Product Lines (SPLs). In DOP, an SPL is structured in four parts: the feature model describes the configuration space of the SPL; the base artifact is an initial artifact; the deltas are sequences of transformation operations on an artifact; and the configuration knowledge indicates for which configuration and in which order the deltas are applied on the base artifact to generate the variant corresponding to the input configuration. In principle, DOP can thus be used to construct SPLs over any artifact that can be transformed. In this paper, we introduce the pydop library which implements DOP in python3. This library provides all the necessary structures to build SPLs over any transformable python artifact. Moreover, it provides transformation operations over python classes and modules, thus enabling the possibility to build SPLs over python code as well. Finally, this library also provides a simple Multi-SPL mechanism that enable SPL interactions.","PeriodicalId":340233,"journal":{"name":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume B","volume":"5 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"PYDOP: A Generic Python Library for Delta-Oriented Programming\",\"authors\":\"Michael Lienhardt\",\"doi\":\"10.1145/3579028.3609011\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Delta-Oriented Programming (DOP) is a modular and flexible approach to implement Software Product Lines (SPLs). In DOP, an SPL is structured in four parts: the feature model describes the configuration space of the SPL; the base artifact is an initial artifact; the deltas are sequences of transformation operations on an artifact; and the configuration knowledge indicates for which configuration and in which order the deltas are applied on the base artifact to generate the variant corresponding to the input configuration. In principle, DOP can thus be used to construct SPLs over any artifact that can be transformed. In this paper, we introduce the pydop library which implements DOP in python3. This library provides all the necessary structures to build SPLs over any transformable python artifact. Moreover, it provides transformation operations over python classes and modules, thus enabling the possibility to build SPLs over python code as well. Finally, this library also provides a simple Multi-SPL mechanism that enable SPL interactions.\",\"PeriodicalId\":340233,\"journal\":{\"name\":\"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume B\",\"volume\":\"5 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2023-08-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume B\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3579028.3609011\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 27th ACM International Systems and Software Product Line Conference - Volume B","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3579028.3609011","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
PYDOP: A Generic Python Library for Delta-Oriented Programming
Delta-Oriented Programming (DOP) is a modular and flexible approach to implement Software Product Lines (SPLs). In DOP, an SPL is structured in four parts: the feature model describes the configuration space of the SPL; the base artifact is an initial artifact; the deltas are sequences of transformation operations on an artifact; and the configuration knowledge indicates for which configuration and in which order the deltas are applied on the base artifact to generate the variant corresponding to the input configuration. In principle, DOP can thus be used to construct SPLs over any artifact that can be transformed. In this paper, we introduce the pydop library which implements DOP in python3. This library provides all the necessary structures to build SPLs over any transformable python artifact. Moreover, it provides transformation operations over python classes and modules, thus enabling the possibility to build SPLs over python code as well. Finally, this library also provides a simple Multi-SPL mechanism that enable SPL interactions.