File Download

There are no files associated with this item.

  • Find it @ UNIST can give you direct access to the published full text of this article. (UNISTARs only)
Related Researcher

이주용

Yi, Jooyong
Programming Languages and Software Engineering Lab.
Read More

Views & Downloads

Detailed Information

Cited time in webofscience Cited time in scopus
Metadata Downloads

Full metadata record

DC Field Value Language
dc.citation.conferencePlace JA -
dc.citation.conferencePlace Fukuoka -
dc.citation.endPage 144 -
dc.citation.startPage 133 -
dc.citation.title 12th Annual International Conference on Aspect-Oriented Software Development, AOSD 2013 -
dc.contributor.author Yi, Jooyong -
dc.contributor.author Robby -
dc.contributor.author Deng, Xianghua -
dc.contributor.author Roychoudhury, Abhik -
dc.date.accessioned 2023-12-20T01:08:25Z -
dc.date.available 2023-12-20T01:08:25Z -
dc.date.created 2019-03-04 -
dc.date.issued 2013-03-24 -
dc.description.abstract Providing a pair of pre and post-condition for a method or a procedure is a typical way of program specification. When specifying a post-condition, it is often necessary to compare the post-state value of a variable with its pre-state value. To access a pre-sate value at a post-condition, most contract languages such as Eiffel and JML provide an old expression; old(x) returns a pre-state value of variable x. However, old expressions pose several problems, most notably the lack of encapsulation; old(x) does not encapsulate an object graph rooted from the pre-state value of x. Thus, method-call expressions like x.equals(old(x)) should generally not be used, and instead each field of x should be compared individually as in x.f1==old(x.f1) && x.f2==old(x.f2). In this paper, we first describe this lack of encapsulation and other problems of old expressions in more detail. Then, to address those problems, we propose our novel past expression along with its formal semantics. We also describe how our past expression can be supported during runtime assertion checking. We explain the involved problems, and show how we solve them. We implement our solution by means of AOP where we exploit various primitive pointcuts including our custom branch pointcut. Copyright © 2013 ACM. -
dc.identifier.bibliographicCitation 12th Annual International Conference on Aspect-Oriented Software Development, AOSD 2013, pp.133 - 144 -
dc.identifier.doi 10.1145/2451436.2451453 -
dc.identifier.scopusid 2-s2.0-84876002496 -
dc.identifier.uri https://scholarworks.unist.ac.kr/handle/201301/35667 -
dc.identifier.url https://dl.acm.org/citation.cfm?doid=2451436.2451453 -
dc.language 영어 -
dc.publisher 12th Annual International Conference on Aspect-Oriented Software Development, AOSD 2013 -
dc.title Past expression: Encapsulating pre-states at post-conditions by means of AOP -
dc.type Conference Paper -
dc.date.conferenceDate 2013-03-24 -

qrcode

Items in Repository are protected by copyright, with all rights reserved, unless otherwise indicated.