J. Yang, K. Hotta, Y. Higo, and S. Kusumoto, "Identifying Cross-Function Side Effects Using Static Analysis," In 電子情報通信学会技術研究報告, 114(23), pp. 25-30 May 2014.
ID 364
分類 研究会・全国大会等
タグ analysis cross-function effects identifying side static
表題 (title) Identifying Cross-Function Side Effects Using Static Analysis
表題 (英文)
著者名 (author) Jiachen Yang, Keisuke Hotta, Yoshiki Higo, Shinji Kusumoto
英文著者名 (author) Jiachen Yang,Keisuke Hotta,Yoshiki Higo,Shinji Kusumoto
編者名 (editor)
編者名 (英文)
キー (key) Jiachen Yang,Keisuke Hotta,Yoshiki Higo,Shinji Kusumoto
書籍・会議録表題 (booktitle) 電子情報通信学会技術研究報告
書籍・会議録表題(英文) IEICE Technical Report
巻数 (volume) 114
号数 (number) 23
ページ範囲 (pages) 25-30
組織名 (organization)
出版元 (publisher)
出版元 (英文)
出版社住所 (address)
刊行月 (month) 5
出版年 (year) 2014
採択率 (acceptance)
URL
付加情報 (note)
注釈 (annote)
内容梗概 (abstract) Side effects are modifications done to the state of the objects
in Object-Oriented Programming languages such as Java.
Side effects can happen across the boundary of the functions, therefore
they are important properties that often be neglected by the documentations.
In this paper, we studied the side effects of functions by
using a static analysis method to automatically infer the
state dependencies for the return value and side effects of functions.
We also present a set of annotations to document these state dependencies.
As a result, the annotations presented in this paper reveals
well-defined state interactions between objects.
These annotations can be used in further investigations by both programmers and
tools. We have implemented the analysis method targeting
Java bytecode and tested it on vary-sized open source Java
software libraries. From our experimental results, we found
that 25-33% of the functions in the evaluated open source
Java libraries are pure functions, which indicates that a large
percentage of the functions is suitable for high level refactoring.
And we present a case study of equals and hashCode functions
to show the importance of our method in real world programming tasks.
論文電子ファイル purano.pdf (application/pdf) [一般閲覧可]
BiBTeXエントリ
@inproceedings{id364,
         title = {Identifying Cross-Function Side Effects using Static Analysis},
        author = {Jiachen Yang and  Keisuke Hotta and  Yoshiki Higo and  Shinji Kusumoto},
     booktitle = {電子情報通信学会技術研究報告},
        volume = {114},
        number = {23},
         pages = {25-30},
         month = {5},
          year = {2014},
}