Using structural context to recommend source code examples
By Reid Holmes, Gail C. Murphy. Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005., 2005
441 citations recorded by the source corpus.
Subfields: Artificial Intelligence, Computer Networks and Communications, Information Systems
View Paper: https://www.semanticscholar.org/paper/64921179fae4f04da016c689eef633b12d8c6abc
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Charles Sutton
- Koushik Sen
- Denys Poshyvanyk
- Jaroslav M. Fowkes
- Premkumar T. Devanbu
- Eran Yahav
- Miltiadis Allamanis
- Martin T. Vechev
In Computer Networks and Communications
- Charles Sutton
- Tien Nhut Nguyen
- Jaroslav M. Fowkes
- Anh Tuan Nguyen
- Tao Xie
- Sebastian Proksch
- Koushik Sen
- Mira Mezini
In Information Systems
- Charles Sutton
- Tien Nhut Nguyen
- Miltiadis Allamanis
- Premkumar T. Devanbu
- Jaroslav M. Fowkes
- Anh Tuan Nguyen
- Eran Yahav
- Koushik Sen
Citations in the corpus
- Parameter-Free Probabilistic API Mining at GitHub Scale (2015, background): “Strathcona [17] is a code example recommendation tool that automatically generates queries from the developer’s current code context.”
- Example-centric programming: integrating web search into the development environment (2010, background): “the types of local variables currently in scope.) Holmes and colleagues have explored this idea in the context of retrieving example code from a fixed repository [ 16 ]; it is not immediately clear how this would generalize to Web search.”
- Learning from examples to improve code completion systems (2009, neutral): “Strathcona [14] uses the structural context of the code under development, e.”
- MAPO: mining API usages from open source repositories (2006, methodology): “[12] R. Holmes and G. C. Murphy.”
- Code completion with statistical language models (2014, methodology): “The Strathcona [18] code recommendation system matches the structure of the code under development to the code in the examples.”
- Component-based synthesis for complex APIs (2017, background): “Code completion refers to the generation of small code snippets involving API calls [18–20, 24, 30, 37, 39, 41, 49, 53].”
- A statistical semantic language model for source code (2013, background): “Strathcona [9] extracts structural context of the current code and finds its relevant examples.”
- Synthesizing Java expressions from free-form queries (2015, background): “Strathcona [18] automatically extracts a query based on the structure of the developed code.”
- Learning API Usages from Bytecode: A Statistical Approach (2015, background): “Holmes and Murphy [15] describe an approach for locating relevant code examples based on heuristically matching with the structure of the code under editing.”
- Synthesizing API usage examples (2012, methodology): “Additionally, their well-formedness properties make them ideal automated tasks like for code completion [17].”
- Asking and Answering Questions during a Programming Change Task (2008, background): “Several research tools aim to address this problem, including CodeFinder [22], which supports queries over an example-based programming environment, and Strathcona [24], which automatically creates queries based on structural context.”
- CoCoMIC: Code Completion by Jointly Modeling In-file and Cross-file Context (2022, neutral): “…and Carroll, 1996; Michail, 2001; Ye et al., 2000; Ye and Fischer, 2002; Cubranic and Murphy, 2003; Inoue et al., 2003; Hill and Rideout, 2004; Holmes and Murphy, 2005) in software engineering literature focused on developing tools to extract information from software repositories to help…”
- MAPO: Mining and Recommending API Usage Patterns (2009, methodology): “Strathcona developed by Holmes and Murphy [15] locates a set of relevant code snippets from a code snippet repository by matching the structure of the code under development with the code snippets in the repository.”
- Parseweb: a programmer assistant for reusing open source code on the web (2007, methodology): “We also analyzed the PARSEWeb results with the results of two other related tools: Prospector 4 [11] and Strathcona 5 [6].”
- Portfolio: finding relevant functions and their usage (2011, neutral): “Programming task-oriented tools like Prospector, Hipikat, Strath-cona, and xSnippet assist programmers in writing complicated code [21, 7, 14, 27].”
- Graph-Based Statistical Language Model for Code (2015, neutral): “There exist deterministic approaches to improve code completion/suggestion and code search by using recent editing history [29], [30], cloned code [31], developers’ editing history [32], API usages, examples, and documentation [33], [34], [35], [36], [37], [38], structural context [39], parameter fi”
- Strathcona example recommendation tool (2005, methodology): “We have performed a case study to ensure that Strathcona can return relevant results for developers working on pre-selected tasks [3].”
- Portfolio: Searching for relevant functions and their usages in millions of lines of code (2013, methodology): “Programming task-oriented tools like Prospector, Hipikat, Strathcona, and xSnippet assist programmers in writing complicated code [Cubranic, Murphy, Singer and Booth 2005; Holmes and Murphy 2005; Holmes, Walker and Murphy 2006; Mandelin, Xu, Bodík and Kimelman 2005; Sahavechaphan and Claypool 2006].”
- Semantic code search via equational reasoning (2020, background): “Tools on the pure search end include Strathcona [23], XSnippet [71], and PARSEWeb [81].”