MAPO: Mining and Recommending API Usage Patterns
By Hao Zhong, Tao Xie, Lu Zhang, Jian Pei, Hong Mei. European Conference on Object-Oriented Programming, 2009
433 citations recorded by the source corpus.
Subfields: Computer Networks and Communications, Information Systems, Software
View Paper: https://www.semanticscholar.org/paper/fed132d312a9f618329238ac6542d0148a0ff157
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Computer Networks and Communications
- Charles Sutton
- Tien Nhut Nguyen
- Koushik Sen
- Anh Tuan Nguyen
- Michael Pradel
- Jaroslav M. Fowkes
- Sebastian Proksch
- Hoan Anh Nguyen
In Information Systems
- Charles Sutton
- Premkumar T. Devanbu
- Miltiadis Allamanis
- Michael Pradel
- Earl T. Barr
- Tien Nhut Nguyen
- Koushik Sen
- Anh Tuan Nguyen
In Software
- Charles Sutton
- Miltiadis Allamanis
- Michael Pradel
- Premkumar T. Devanbu
- Earl T. Barr
- Tien Nhut Nguyen
- Koushik Sen
- Swarat Chaudhuri
Citations in the corpus
- Mining Semantic Loop Idioms from Big Code (2016, neutral): “Another related area is API mining (Acharya et al. 2007; Nguyen et al. 2009; Zhong et al. 2009; Wang et al. 2013).”
- Synthesizing API usage examples (2012, methodology): “, [12], [13]), to the best of our knowledge our approach is the first to leverage type information and statement ordering.”
- Learning API Usages from Bytecode: A Statistical Approach (2015, background): “MAPO [45] mined frequent API call sequences and suggests associated code examples.”
- Evaluating the evaluations of code recommender systems: A reality check (2016, background): “MAPO [29] is a miner and recommender for API usage patterns.”
- Learning to rank code examples for code search engines (2017, methodology): “Then the package computes the page-rank of each code snippet E using (5) (Brin and Page 1998) The context similarity refers to the similarity between the context of the query and the candidate code snippets (Zhong et al. 2009).”
- Bayesian specification learning for finding API usage errors (2017, background): “Most efforts in this area [6–8, 21, 25, 35, 42, 48, 55–57] focus on qualitative specifications, typically finite automata.”
- Graph-Based Statistical Language Model for Code (2015, background): “, mining frequent pairs, subsequences [11], [28], [4], item sets [10], subgraphs [5], [12], associate rules [13].”
- On the localness of software (2014, background): “[50, 51] aim to predict API calls, and Zhang et al.”
- A statistical semantic language model for source code (2013, background): “MAPO [22] mines API patterns and suggests associated code examples.”
- Portfolio: finding relevant functions and their usage (2011, neutral): “MAPO [38] F N W,Q T”
- Parameter-free probabilistic API mining across GitHub (2015, methodology): “Choosing the number of clusters/cutoff is considered somewhat of a black art and can only be reliably inferred through computationally expensive training procedures on a validation set [44, 40].”
- Aroma: code recommendation via structural code search (2018, background): “MAPO [Zhong et al. 2009] recommends code examples by mining and indexing associated API usage patterns.”
- Learning natural coding conventions (2014, background): “API recommenders, code suggestion and completion systems aim to help during editing, when a user may not know the name of an API she needs [63], the parameters she should pass to the API [75], or that the API call she is making needs to preceded by another [29, 70, 71, 76].”
- A Large-Scale Study on Repetitiveness, Containment, and Composability of Routines in Open-Source Projects (2016, methodology): “Deterministic pattern mining methods are used, e.g., mining frequent pairs, subsequences [60, 4, 61], item sets [13], subgraphs [52, 15], association rules [37].”
- Exploring API Embedding for API Usages and Applications (2017, background): “As an evidence of that, researchers have been able to mine API usage patterns, which are frequently occurring API usages, from large code corpora [1], [2].”
- Mining idioms from source code (2014, background): “rogrammers ourselves, we would nd this alien and more difcult to understand. Idioms dier signicantly from previous notions of textual patterns in software, such as code clones [43] and API patterns [55]. Unlike clones, idioms commonly recur across projects, even ones from dierent domains, and unlike”
- Learning to Fuzz: Application-Independent Fuzz Testing with Probabilistic, Generative Models of Input Data (2016, background): “, to find anomalies that correspond to bugs [36], for code completion [12], to recommend API usages [50], for plagiarism detection [31, 46], and to find copy-paste bugs [29].”