The Big Picture Related Work Practical Considerations The Boundaries of Our Methods
Code Synthesis
for (int i = 0; i < 10; i++){ Token en Console.WriteLine(i); } ForStatement ions ns Expression Expression Body Initialization esentatio Syntax tax Infix Single Variable Expression epresentat Declaration Left Right Type Name Initializer Operator Operand Operand i < Numeric i Numeric int Literal Literal 10 0 e Rep i=0 ode Graph ph i<10 Cod i++ Console.WriteLine(i) END
Pr Program ramming ming La Languag uage e Hindle et al . “On the naturalness of software” ICSE 2012 Mo Model els Image from Allamanis & Sutton, MSR 2013
ForkJoinTask<?> job; 1. job (30%) if (task instanceof ForkJoinTask<?>) // avoid re-wrap job = (ForkJoinTask<?>) task; Su Suggest stio ions ns 2. task (20%) else job = new 3. tsk (15%) ForkJoinTask.AdaptedRunnableAction(task); externalPush(job); Allamanis et al. FSE 2014, 2015 and other recent work
http://groups.inf.ed.ac.uk/cup/naturalize
http://groups.inf.ed.ac.uk/cup/naturalize
Raychev et al. 2014 Nguyen et al. 2013,2015 Oda et al. ASE 2015
Balog et al. “ DeepCoder: Learning to Write Programs ”, 2016
Balog et al. “ DeepCoder: Learning to Write Programs ”, 2016
Raychev et al. “ Predicting Program Properties from Big Code ”, 2015
Allamanis et al. “ Learning to Represent Programs with Graphs ”, 2017
https://github.com/dotnet/roslyn/pull/23437
Explainability Metrics Low-Resource Train-Use & Environments Feedback Loop Train/Use Costs Confidentiality
The Frontiers of Our Methods
Predictions ● get, UNK (9%) ● get, height (8.7%) ● get, width (6.5%) ● get (5.7%) ● get,size (4.2%) Allamanis et al , “ A Convolutional Attention Network for Extreme Summarization of Source Code”, ICML 2016
Gaunt et al , “ T erpreT: A Probabilistic Programming Language for Program Induction ”, 2016
SemVecs Syntax-driven but small changes in syntax can lead in large changes in semantics Zaremba et al. 2014 Allamanis et al. 2017
t-SNE Visualization SimpPoly8 http://groups.inf.ed.ac.uk/cup/semvec/
t-SNE Visualization Bool10-UnseenTest http://groups.inf.ed.ac.uk/cup/semvec/
t-SNE Visualization Bool10-UnseenTest http://groups.inf.ed.ac.uk/cup/semvec/
Recommend
More recommend