Inference of static semantics for incomplete C programs.
dc.contributor.author | Melo, Leandro T. C. | |
dc.contributor.author | Ribeiro, Rodrigo Geraldo | |
dc.contributor.author | Araújo, Marcos Roberto de | |
dc.contributor.author | Pereira, Fernando Magno Quintao | |
dc.date.accessioned | 2019-04-08T14:28:06Z | |
dc.date.available | 2019-04-08T14:28:06Z | |
dc.date.issued | 2018 | |
dc.description.abstract | Incomplete source code naturally emerges in software development: during the design phase, while evolving, testing and analyzing programs. Therefore, the ability to understand partial programs is a valuable asset. However, this problem is still unsolved in the C programming language. Difficulties stem from the fact that parsing C requires, not only syntax, but also semantic information. Furthermore, inferring types so that they respect C’s type system is a challenging task. In this paper we present a technique that lets us solve these problems. We provide a unification-based type inference capable of dealing with C intricacies. The ideas we present let us reconstruct partial C programs into complete well-typed ones. Such program reconstruction has several applications: enabling static analysis tools in scenarios where software components may be absent; improving static analysis tools that do not rely on build-specifications; allowing stub-generation and testing tools to work on snippets; and assisting programmers on the extraction of reusable data-structures out of the program parts that use them. Our evaluation is performed on source code from a variety of C libraries such as GNU’s Coreutils, GNULib, GNOME’s GLib, and GDSL; on implementations from Sedgewick’s books; and on snippets from popular open-source projects like CPython, FreeBSD, and Git. | pt_BR |
dc.identifier.citation | MELO, L. T. C. et al. Inference of static semantics for incomplete C programs. Proceedings of the ACM on Programming Languages, v. 2, p. 1-28, 2017. Disponível em: <https://dl.acm.org/citation.cfm?id=3158117>. Acesso em: 15 fev. 2019. | pt_BR |
dc.identifier.issn | 24751421 | |
dc.identifier.uri | http://www.repositorio.ufop.br/handle/123456789/10962 | |
dc.identifier.uri2 | https://dl.acm.org/citation.cfm?id=3158117 | pt_BR |
dc.language.iso | en_US | pt_BR |
dc.rights | restrito | pt_BR |
dc.subject | Partial programs | pt_BR |
dc.subject | Parsing | pt_BR |
dc.subject | Type inference | pt_BR |
dc.title | Inference of static semantics for incomplete C programs. | pt_BR |
dc.type | Artigo publicado em periodico | pt_BR |
Files
Original bundle
1 - 1 of 1
No Thumbnail Available
- Name:
- ARTIGO_InterferenceStaticSemantics.pdf
- Size:
- 588.71 KB
- Format:
- Adobe Portable Document Format
License bundle
1 - 1 of 1
No Thumbnail Available
- Name:
- license.txt
- Size:
- 924 B
- Format:
- Item-specific license agreed upon to submission
- Description: