Reasoning tradeoffs in languages with enhanced modularity features

 

Αποθηκεύτηκε σε:
Λεπτομέρειες βιβλιογραφικής εγγραφής
Συγγραφείς: Sánchez Salazar, José, Leavens, Gary
Μορφή: artículo
Ημερομηνία έκδοσης:2016
Περιγραφή:The 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.
Χώρα:Repositorio UNA
Ίδρυμα:Universidad Nacional de Costa Rica
Repositorio:Repositorio UNA
Γλώσσα:Inglés
OAI Identifier:oai:null:11056/17668
Διαθέσιμο Online:http://hdl.handle.net/11056/17668
Λέξη-Κλειδί :SOFTWARE
COMPUTACIÓN
MODULE VERIFICATION
CROSS-COMPUTATION TOOLS AND TECHINIQUES
ENGINEERING
SOFTWARE CREATION AND MANAGEMENT