ABSTRACT
Third-party libraries are an integral part of many software projects. It often happens that developers need to find analogical libraries that can provide comparable features to the libraries they are already familiar with. Existing methods to find analogical libraries are limited by the community-curated list of libraries, blogs, or Q&A posts, which often contain overwhelming or out-of-date information. This paper presents our tool SimilarTech (https://graphofknowledge.appspot.com/similartech) that makes it possible to automatically recommend analogical libraries by incorporating tag embeddings and domain-specific relational and categorical knowledge mined from Stack Overflow. SimilarTech currently supports recommendation of 6,715 libraries across 6 different programming languages. We release our SimilarTech website for public use. The SimilarTech website attracts more than 2,400 users in the past 6 months. We observe two typical usage patterns of our website in the website visit logs which can satisfy different information needs of developers. The demo video can be seen at https://youtu.be/ubx8h4D4ieE.
- R. Agrawal, R. Srikant, et al. Fast algorithms for mining association rules. In 20th VLDB, volume 1215, pages 487–499, 1994. Google ScholarDigital Library
- 5 www.similarweb.com/ 6 http://alternativeto.net/Google Scholar
- W.-K. Chan, H. Cheng, and D. Lo. Searching connected api subgraph via text phrases. In FSE, page 10. ACM, 2012. Google ScholarDigital Library
- C. Chen, S. Gao, and Z. Xing. Mining analogical libraries in q&a discussions -incorporating relational and categorical knowledge into word embedding. In 23rd IEEE International Conference on Software Analysis, Evolution, and Reengineering (SANER), pages 338–348. IEEE, 2016.Google Scholar
- C. Chen and Z. Xin. Towards correlating search on google and asking on stack overflow. In 40th COMPSAC, pages 83–92. IEEE, 2016.Google Scholar
- C. Chen and Z. Xing. Mining technology landscape from stack overflow. In 10th ESEM. IEEE/ACM, 2016.Google ScholarDigital Library
- C. Chen, Z. Xing, and L. Han. Techland: Assisting technology landscape inquiries with insights from stack overflow. In 32nd ICSME. IEEE, 2016.Google ScholarCross Ref
- Google analytics policy. https://support.google.com/ analytics/answer/1315708?hl=en.Google Scholar
- J. Kazama and K. Torisawa. Exploiting wikipedia as external knowledge for named entity recognition. In Proceedings of the 2007 EMNLP-CoNLL, pages 698–707, 2007.Google Scholar
- T. Mikolov, I. Sutskever, K. Chen, G. S. Corrado, and J. Dean. Distributed representations of words and phrases and their compositionality. In NIPS, pages 3111–3119, 2013.Google Scholar
- T. Mikolov, W.-t. Yih, and G. Zweig. Linguistic regularities in continuous space word representations. In HLT-NAACL, pages 746–751, 2013.Google Scholar
- A. T. Nguyen, H. A. Nguyen, T. T. Nguyen, and T. N. Nguyen. Statistical learning approach for mining api usage mappings for code migration. In Proceedings of the 29th ASE, pages 457–468. ACM, 2014. Google ScholarDigital Library
- T. T. Nguyen, A. T. Nguyen, H. A. Nguyen, and T. N. Nguyen. A statistical semantic language model for source code. In 9th FSE, pages 532–542. ACM, 2013. Google ScholarDigital Library
- C. Teyton, J.-R. Falleri, and X. Blanc. Mining library migration graphs. In 19th WCRE, pages 289–298. IEEE, 2012. Google ScholarDigital Library
- C. Teyton, J.-R. Falleri, and X. Blanc. Automatic discovery of function mappings between similar libraries. In 20th WCRE, pages 192–201. IEEE, 2013.Google Scholar
- F. Thung, D. Lo, and J. Lawall. Automated library recommendation. In WCRE, pages 182–191. IEEE, 2013.Google Scholar
- F. Thung, S. Wang, D. Lo, and J. Lawall. Automatic recommendation of api methods from feature requests. In Automated Software Engineering (ASE), 2013 IEEE/ACM 28th International Conference on, pages 290–300. IEEE, 2013.Google Scholar
- D. M. L. Xu, R. Bodık, and D. Kimelman. Jungloid mining: Helping to navigate the api jungle. In POPL, 2005. Google ScholarDigital Library
- H. Zhong, S. Thummalapenta, T. Xie, L. Zhang, and Q. Wang. Mining api mapping for language migration. In 32nd ICSE, pages 195–204. ACM, 2010. Google ScholarDigital Library
- H. Zhong, T. Xie, L. Zhang, J. Pei, and H. Mei. Mapo: Mining and recommending api usage patterns. In ECOOP, pages 318–343. Springer, 2009. Google ScholarDigital Library
Index Terms
- SimilarTech: automatically recommend analogical libraries across different programming languages
Recommendations
What's Spain's Paris? Mining analogical libraries from Q&A discussions
Third-party libraries are an integral part of many software projects. It often happens that developers need to find analogical libraries that can provide comparable features to the libraries they are already familiar with for different programming ...
Languages as libraries
PLDI '11: Proceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and ImplementationProgramming language design benefits from constructs for extending the syntax and semantics of a host language. While C's string-based macros empower programmers to introduce notational shorthands, the parser-level macros of Lisp encourage ...
Languages as libraries
PLDI '11Programming language design benefits from constructs for extending the syntax and semantics of a host language. While C's string-based macros empower programmers to introduce notational shorthands, the parser-level macros of Lisp encourage ...
Comments