Semantic code browsing

被引:5
|
作者
Garcia-Contreras, Isabel [1 ]
Morales, Jose F. [1 ]
Hermenegildo, Manuel V. [1 ,2 ]
机构
[1] IMDEA Software Inst, Madrid, Spain
[2] Tech Univ Madrid UPM, Sch Comp Sci, Madrid, Spain
关键词
Semantic Code Search; Abstract Interpretation; Assertions; CONSTRAINT LOGIC PROGRAMS; ABSTRACT INTERPRETATION; SYSTEM; CIAO;
D O I
10.1017/S1471068416000417
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Programmers currently enjoy access to a very high number of code repositories and libraries of ever increasing size. The ensuing potential for reuse is however hampered by the fact that searching within all this code becomes an increasingly difficult task. Most code search engines are based on syntactic techniques such as signature matching or keyword extraction. However, these techniques are inaccurate (because they basically rely on documentation) and at the same time do not offer very expressive code query languages. We propose a novel approach that focuses on querying for semantic characteristics of code obtained automatically from the code itself. Program units are pre-processed using static analysis techniques, based on abstract interpretation, obtaining safe semantic approximations. A novel, assertion-based code query language is used to express desired semantic characteristics of the code as partial specifications. Relevant code is found by comparing such partial specifications with the inferred semantics for program elements. Our approach is fully automatic and does not rely on user annotations or documentation. It is more powerful and flexible than signature matching because it is parametric on the abstract domain and properties, and does not require type definitions. Also, it reasons with relations between properties, such as implication and abstraction, rather than just equality. It is also more resilient to syntactic code differences. We describe the approach and report on a prototype implementation within the Ciao system.
引用
收藏
页码:721 / 737
页数:17
相关论文
共 50 条
  • [31] CONFOTO: A semantic browsing and annotation service for conference photos
    Nowack, B
    SEMANTIC WEB - ISWC 2005, PROCEEDINGS, 2005, 3729 : 1067 - 1070
  • [32] Semantic models for multimedia database searching and browsing.
    Smeaton, AF
    JOURNAL OF DOCUMENTATION, 2001, 57 (06) : 820 - 822
  • [33] Challenges in supporting faceted semantic browsing of multimedia collections
    Smith, Daniel Alexander
    Owens, Alisdair
    Schraefel, M. C.
    Sinclair, Patrick
    Andre, Paul
    Wilson, Max L.
    Russell, Alistair
    Martinez, Kirk
    Lewis, Paul
    SEMANTIC MULTIMEDIA, PROCEEDINGS, 2007, 4816 : 280 - 283
  • [34] Vibro: Video Browsing with Semantic and Visual Image Embeddings
    Schall, Konstantin
    Hezel, Nico
    Jung, Klaus
    Barthel, Kai Uwe
    MULTIMEDIA MODELING, MMM 2023, PT I, 2023, 13833 : 665 - 670
  • [35] Web Summarization and Browsing Through Semantic Tag Clouds
    Rinaldi, Antonio M.
    INTERNATIONAL JOURNAL OF INTELLIGENT INFORMATION TECHNOLOGIES, 2019, 15 (03) : 1 - 23
  • [36] Code semantic enrichment for deep code search
    Deng, Zhongyang
    Xu, Ling
    Liu, Chao
    Huangfu, Luwen
    Yan, Meng
    JOURNAL OF SYSTEMS AND SOFTWARE, 2024, 207
  • [37] Remote code browsing, a network based computation utility
    Giblin, C
    Rooney, S
    Bussani, A
    MANAGEMENT TECHNOLOGIES FOR E-COMMERCE AND E-BUSINESS APPLICATIONS, PROCEEDINGS, 2002, 2506 : 121 - 132
  • [38] SemWeB: A Semantic Web browser for supporting the browsing of users using semantic and adaptive links
    Sah, Melike
    Hall, Wendy
    De Roure, David C.
    ADAPTIVE HYPERMEDIA AND ADAPTIVE WEB-BASED SYSTEMS, 2008, 5149 : 431 - 436
  • [39] Malicious Code Detection Based on Code Semantic Features
    Zhang, Yu
    Li, Binglong
    IEEE ACCESS, 2020, 8 : 176728 - 176737
  • [40] A detection framework for semantic code clones and obfuscated code
    Sheneamer, Abdullah
    Roy, Swarup
    Kalita, Jugal
    EXPERT SYSTEMS WITH APPLICATIONS, 2018, 97 : 405 - 420