Show simple item record

dc.contributor.authorSánchez Salazar, José
dc.contributor.authorLeavens, Gary
dc.date.accessioned2020-06-29T16:34:45Z
dc.date.available2020-06-29T16:34:45Z
dc.date.issued2016-03
dc.identifier.urihttp://hdl.handle.net/11056/17668
dc.description.abstractThe continuous need for more ambitious, more complex, and more dependable software systems demands mechanisms to modularize such systems and reason about their correctness. The reasoning process is affected by the programming language's features, like dynamic dispatching, implicit invocation and oblivious aspect weaving, and by how the programmer uses them. In this paper, by devising a unifying formal setting, we show how reasoning varies with the different language mechanisms, and provide sound rules for reasoning about programs that use these features. While analyzing these mechanisms we explore the main compromises or tradeoffs that led to them and explain the disciplines they impose and the strength of the reasoning conclusions one can derive in each case. Our contributions will benefit both language designers and programmers. Language designers will benefit from learning the effects of different modularity features on reasoning. Programmers will learn how to reason about programs that use such features. © 2016 ACM.es_ES
dc.description.abstractThe continuous need for more ambitious, more complex, and more dependable software systems demands mechanisms to modularize such systems and reason about their correctness. The reasoning process is affected by the programming language’s features, like dynamic dispatching, implicit invocation and oblivious aspect weaving, and by how the programmer uses them. In this paper, by devising a unifying formal setting, we show how reasoning varies with the different language mechanisms, and provide sound rules for reasoning about programs that use these features. While analyzing these mechanisms we explore the main compromises or tradeoffs that led to them and explain the disciplines they impose and the strength of the reasoning conclusions one can derive in each case. Our contributions will benefit both language designers and programmers. Language designers will benefit from learning the effects of different modularity features on reasoning. Programmers will learn how to reason about programs that use such features.es_ES
dc.description.sponsorshipUniversidad Nacional, Costa Ricaes_ES
dc.language.isoenges_ES
dc.publisherModularity 2016: Proceedings of the 15th International Conference on Modularity 13-24 2016es_ES
dc.rightsAcceso abiertoes_ES
dc.subjectSOFTWAREes_ES
dc.subjectCOMPUTACIÓNes_ES
dc.subjectMODULE VERIFICATIONes_ES
dc.subjectCROSS-COMPUTATION TOOLS AND TECHINIQUESes_ES
dc.subjectENGINEERINGes_ES
dc.subjectSOFTWARE CREATION AND MANAGEMENTes_ES
dc.titleReasoning tradeoffs in languages with enhanced modularity featureses_ES
dc.typehttp://purl.org/coar/resource_type/c_6501es_ES
dc.description.procedenceEscuela de Informáticaes_ES
dc.identifier.doidoi.org/10.1145/2889443.2889447


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record