Artifacts of the ESEC/FSE 2021 Submisssion Cognac
收藏资源简介:
This repository contains the artifacts of <em><strong>Cognac</strong></em>, a paper under review by ESEC/FSE 2021. <strong>Datasets</strong>: All datasets used in our study are open-sourced. We provide the links to each of them below. Empirical dataset (here) MNR task datasets: <em>Java-small</em>, <em>Java-med</em>, <em>Java-large</em> (here) MNR task dataset: <em>MNire's</em> (here) MCC task dataset (here) To extract this dataset, we excuted the code from Liu et al. on a high-performance server for an extremely long tome. To facilitate future researches, we release our parsed data in <em>RenamedMethods.zip</em>. <strong>Source code</strong>: We release two source files in this repository. <em>dataextractor.py:</em> This is a project-level call graph builder implemented in Python language. One can use it to analyze the call relations within specific projects. Furthermore, one can also use it to extract the input of <em>Cognac</em>, which is a sequence of tokens extracted from totally six sources as we have introduced in the paper. <em>model.py:</em> This is the pointer-generator model of <em>Cognac </em>which is implemented in Pytorch. We will build a homepage for <em>Cognac </em>on Github and release the whole project upon acceptance.
本代码仓库包含提交至ESEC/FSE 2021会议并处于审稿阶段的论文《Cognac》的相关研究产出物。 **数据集**:本研究使用的全部数据集均已开源,下文提供各数据集的访问链接。经验数据集(链接见此处);MNR任务数据集:Java-small、Java-med、Java-large(链接见此处);另一项MNR任务数据集:MNire's(链接见此处);MCC任务数据集(链接见此处)。 为获取该数据集,我们在高性能服务器上运行Liu等人的代码,耗时极久。为便于后续研究工作开展,我们将解析后的数据发布于`RenamedMethods.zip`压缩包中。 **源代码**:本仓库提供两个源码文件。 1. `dataextractor.py`:该工具为基于Python语言实现的项目级调用图构建程序,可用于分析特定项目内的函数调用关系,同时也可用于提取《Cognac》所需的输入数据——即本文所述的从共计6类来源中抽取的词元(Token)序列。 2. `model.py`:该文件为基于PyTorch实现的《Cognac》指针生成器(pointer-generator)模型。 我们将在GitHub上搭建《Cognac》的专属主页,并在论文被接收后发布完整项目代码。



