├── term.md └── README.md /term.md: -------------------------------------------------------------------------------- 1 | # Terminologies 2 | 3 | Here are the definition of some common terms in programming languge: 4 | 5 | ### Domain-specific language 6 | This is in contrast to a general-purpose language (GPL), which is broadly applicable across domains. 7 | 8 | Domain-specific languages are languages (or often, declared syntaxes or grammars) with very specific goals 9 | in design and implementation. 10 | 11 | ### [Domain-specific modeling](https://en.wikipedia.org/wiki/Domain-specific_modeling) 12 | Domain-specific modeling (DSM) is a software engineering methodology for designing and developing systems, 13 | such as computer software. 14 | It involves systematic use of a domain-specific language to represent the various facets of a system. 15 | 16 | Domain-specific modeling languages tend to support higher-level abstractions than general-purpose modeling languages, 17 | so they require less effort and fewer low-level details to specify a given system. 18 | 19 | 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome Neural Programming: [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) 2 | A curated list of awesome neural programming resources, inspired by [awesome-computer-vision](https://github.com/jbhuang0604/awesome-computer-vision). 3 | 4 | ## Table of Content 5 | - [Workshops or Tutorial](https://github.com/andrewliao11/awesome-neural-programming/blob/master/README.md#workshops) 6 | - [Related Talks](https://github.com/andrewliao11/awesome-neural-programming/blob/master/README.md#related-talks) 7 | - [Blog Posts](https://github.com/andrewliao11/awesome-neural-programming/blob/master/README.md#blog-posts) 8 | - [Papers](https://github.com/andrewliao11/awesome-neural-programming/blob/master/README.md#papers) 9 | - [Terminologies]() 10 | 11 | ## Workshops or Tutorial 12 | - [Neural Abstract Machines & Program Induction](https://uclmr.github.io/nampi/) (NAMPI) Workshop at NIPS 2016 13 | - [Modelling Natural Language, Programs, and their Intersection](https://github.com/neubig/naacl18tutorial?utm_campaign=Revue%20newsletter&utm_medium=Newsletter&utm_source=NLP%20News) Tutorial at NAACL 2018 14 | 15 | ## Related Talks 16 | - [2v2 Debate: *Interpretability is necessary in machine learning*](https://www.youtube.com/watch?v=2hW05ZfsUUo&t=198s), by Caruana, Simard, Weinberger, LeCun 17 | - [Learning to Code: Machine Learning for Program Induction](https://www.youtube.com/watch?v=vzDuVhFMB9Q), by ALex Gaunt 18 | 19 | ## Blog Posts 20 | 21 | - [Deep Learning for Program Synthesis](https://www.microsoft.com/en-us/research/blog/deep-learning-program-synthesis/), from Microsoft Research 22 | 23 | 24 | ## Papers 25 | 26 | ### Recommended 27 | - Neural Programmer-Interpreters, Scott Reed and Nando de Freitas, ICLR16, [[ArXiv](https://arxiv.org/abs/1511.06279)] 28 | - Making Neural Programming Architectures Generalize via Recursion, Jonathon Cai et al., ICLR17, [[Openreview](https://openreview.net/forum?id=BkbY4psgg)] 29 | - Learning to Represent Programs with Graphs, Miltiadis Allamanis et al., ICLR18, [[Openreview](https://openreview.net/forum?id=BJOFETxR-)], [[ArXiv](https://arxiv.org/abs/1711.00740)] 30 | - Neural Task Programming: Learning to Generalize Across Hierarchical Tasks, Danfei Xu et al., ICRA18, [[ArXiv](https://arxiv.org/abs/1710.01813)] 31 | 32 | ### Related Papers 33 | 34 | #### algorithmic program learning 35 | - Neural Program Lattices, Chengtao Li et al., ICLR17, [[Openreview](https://openreview.net/forum?id=HJjiFK5gx)] 36 | - Neural GPUs Learn Algorithms, Łukasz Kaiser and Ilya Sutskever, ICLR16, [[ArXiv](https://arxiv.org/abs/1511.08228)] 37 | - Parametrized Hierarchical Procedures for Neural Programming, Roy Fox et al., ICLR18 [[Openreview](https://openreview.net/forum?id=rJl63fZRb)] 38 | 39 | #### Computer Vision 40 | - Neural Scene De-rendering, Jiajun Wu et al., CVPR17, [[Paper](http://nsd.csail.mit.edu/papers/nsd_cvpr.pdf)] 41 | 42 | #### Reinforcement Learning 43 | - Programmatically Interpretable Reinforcement Learning, Abhinav Verma et al., ICML18, [[ArXiv](https://arxiv.org/abs/1804.02477)] 44 | 45 | 46 | #### Natural Language Processing 47 | - From Language to Programs: Bridging Reinforcement Learning and Maximum Marginal Likelihood, Kelvin Guu et al., ACL17 [[ArXiv](https://arxiv.org/abs/1704.07926)] 48 | - Language to code: Learning semantic parsers for if-this-then-that recipes, C. Quirk et al., ACL15, [[paper]](http://www.aclweb.org/anthology/P15-1085) 49 | 50 | #### Program synthesis 51 | - Neuro-Symbolic Program Synthesis, Emilio Parisotto et al., ICLR17, [[ArXiv](https://arxiv.org/abs/1611.01855)] 52 | - DeepCoder: Learning to Write Programs, Matej Balog et al., ICLR17, [[Openreview](https://openreview.net/forum?id=ByldLrqlx)] [[ArXiv](https://arxiv.org/abs/1611.01989)] 53 | - Neural Program Synthesis with Priority Queue Training, Daniel A. Abolafia et al., [[Openreview](https://openreview.net/forum?id=r1AoGNlC-)] [[ArXiv](https://arxiv.org/abs/1801.03526)], [[code](https://github.com/tensorflow/models/tree/master/research/brain_coder)] 54 | - Leveraging Grammar and Reinforcement Learning for Neural Program Synthesis, Rudy Bunel et al., ICLR18, [[Openreview]](https://openreview.net/forum?id=H1Xw62kRZ) 55 | - Neural Program Synthesis from Diverse Demonstration Videos, Shao-Hua Sun et al., ICML18, [[Project page]](https://shaohua0116.github.io/demo2program/) 56 | 57 | #### Program induction 58 | - Neural Symbolic Machines: Learning Semantic Parsers on Freebase with Weak Supervision, Chen Liang et al., ACL17, [[ArXiv](https://arxiv.org/abs/1611.00020)] 59 | - Using Program Induction to Interpret Transition System Dynamics, Svetlin et al., ICML2017 Workshop 60 | 61 | 62 | #### Other 63 | - Neural Program Meta-Induction, Jacob Devlin et al., NIPS17, [[ArXiv](https://arxiv.org/abs/1710.04157)] 64 | - TerpreT: A Probabilistic Programming Language for Program Induction, Alexander L. Gaunt et al., NIPS16 NAMPI Workshop, [[ArXiv](https://arxiv.org/abs/1608.04428)] 65 | - Lifelong Perceptual Programming By Example, Alexander L. Gaunt et al., ICLR17 Workshop, [[Openreview](https://openreview.net/forum?id=HJStZKqel)] 66 | - Dynamic Neural Program Embeddings for Program Repair, Ke Wang, et al. ICLR18, [[Openreview](https://openreview.net/forum?id=BJuWrGW0Z)] 67 | - Recent Advances in Neural Program Synthesis, Neel Kant 68 | 69 | 70 | ## Licenses 71 | [![CC0](http://i.creativecommons.org/p/zero/1.0/88x31.png)](http://creativecommons.org/publicdomain/zero/1.0/) 72 | 73 | To the extent possible under law, [Yuan-Hong Liao](https://andrewliao11.github.io) has waived all copyright and related or neighboring rights to this work. 74 | --------------------------------------------------------------------------------