---
title: "SPoC: Search-based Pseudocode to Code (2019)"
description: "They propose two ways to do this: a multiclass classifier that reads the error message, the code and… 44 references, cited by 87 papers here."
authors: ["Sumith Kulal", "Panupong Pasupat", "Kartik Chandra", "Mina Lee", "Oded Padon", "Alex Aiken", "Percy Liang"]
year: 2019
venue: "arXiv:1906.04908"
source: "https://arxiv.org/abs/1906.04908"
doi: "10.48550/arxiv.1906.04908"
arxiv: "1906.04908"
licence: "arXiv — non-exclusive licence to distribute"
licence_url: "http://arxiv.org/licenses/nonexclusive-distrib/1.0/"
summary_licence: "Elamur Cosmic License"
canonical: "https://research.elamur.ai/free/en/papers/kulal-2019-spoc-search-based-pseudocode-code/"
---
[Elamur Research](https://md.research.elamur.ai/free/en/) · [this page in HTML](https://research.elamur.ai/free/en/papers/kulal-2019-spoc-search-based-pseudocode-code/)

[home](https://md.research.elamur.ai/free/en/) / [papers](https://md.research.elamur.ai/free/en/papers/) / [2019](https://md.research.elamur.ai/free/en/papers/2019/page/5/) / SPoC: Search-based Pseudocode to Code

# SPoC: Search-based Pseudocode to Code

**Authors:** Sumith Kulal, [Panupong Pasupat](https://md.research.elamur.ai/free/en/authors/panupong-pasupat/), Kartik Chandra, [Mina Lee](https://md.research.elamur.ai/free/en/authors/mina-lee/), [Oded Padon](https://md.research.elamur.ai/free/en/authors/oded-padon/), [Alex Aiken](https://md.research.elamur.ai/free/en/authors/alex-aiken/) and [Percy Liang](https://md.research.elamur.ai/free/en/authors/percy-liang/) · **Year:** 2019 · **Venue:** arXiv:1906.04908 · **Licence:** [arXiv — non-exclusive licence to distribute](http://arxiv.org/licenses/nonexclusive-distrib/1.0/)

**Links:** [Publisher's page](https://arxiv.org/abs/1906.04908) · [PDF](https://arxiv.org/pdf/1906.04908) · [DOI 10.48550/arxiv.1906.04908](https://doi.org/10.48550/arxiv.1906.04908) · [arXiv 1906.04908](https://arxiv.org/abs/1906.04908) · [OpenAlex](https://openalex.org/W2950621612)

**Citations:** 9 citations (OpenAlex, 2026-10-14) · [87](https://md.research.elamur.ai/free/en/papers/kulal-2019-spoc-search-based-pseudocode-code/cited-by/) in our library, of the 149,439 papers whose bibliographies we read

## Summary

SPoC addresses the generation of complete, multi-line C++ programs (roughly 10–20 lines) from line-by-line natural-language pseudocode. Programs are judged by whether they pass test cases, not by how closely they match reference code. The system first produces several candidate translations for each pseudocode line. It then searches over combinations of these candidates for a program that compiles and passes the public tests. Most failed attempts turn out to be compiler errors, so the authors use those errors to steer the search toward the line responsible. They propose two ways to do this:

* a multiclass classifier that reads the error message, the code and the pseudocode, and down-weights the suspect line;
* prefix-based pruning, which spends extra compilations to find a code prefix that is guaranteed to be faulty and then blacklists it.

The authors also built and released the SPoC dataset. With a budget of 100 compilations, search lifts the success rate from about 25% (top-one translation) to 44.7%. The work shows that combining pseudocode with test cases makes it feasible to synthesize longer programs that actually work.

## Key points

- **SPoC dataset:** 18,356 accepted C++ solutions to 677 easy problems from codeforces.com, averaging 14.7 lines each. Every line has pseudocode written by 59 vetted Amazon Mechanical Turk workers, and every program comes with public and hidden test cases.
- **Two test splits:** TESTP holds out 158 unseen problems (1,820 programs), and TESTW holds out 7 unseen annotators.
- **Why compiler errors matter:** they account for 88.7% of failures during search, which motivates error localization. Simply down-weighting the line the compiler reports actually makes results worse.
- **Results:** top-one translation succeeds 25.6% of the time (the introduction gives 24.6%), and search with 100 trials reaches 44.7%. With unlimited budget, the top-100 candidate lists cap success at 55.2% on TESTP and 71.4% on TESTW.
- **Multiclass classifier vs. prefix-based pruning:**
  - The classifier reduces the number of trials for 15.5% of programs, with a median saving of 26 trials (42%). Because its guesses are never verified, it occasionally causes the search to fail outright.
  - Pruning beats the classifier once the budget exceeds roughly 1,500 compilations.

*Our summary of the paper, in our own words — not its text. The work belongs to its authors; read it at the links above.*

## Institutions

- [Stanford University](https://md.research.elamur.ai/free/en/universities/stanford-university/) — University, Stanford, United States · 506 works · 330,053 citations

📚 Shelves (4): [🖥️ Computer Science](https://md.research.elamur.ai/free/en/shelves/computer-science/) · 18,614 works · [🗄️ Information Systems](https://md.research.elamur.ai/free/en/shelves/computer-science/information-systems/) · 1,730 works · [💻 Software](https://md.research.elamur.ai/free/en/shelves/computer-science/software/) · 119 works · [🖥️ Computer Science Applications](https://md.research.elamur.ai/free/en/shelves/computer-science/computer-science-applications/) · 131 works

## Cite

Cite as: Sumith Kulal, Panupong Pasupat, Kartik Chandra, Mina Lee, Oded Padon, Alex Aiken and Percy Liang. 2019. SPoC: Search-based Pseudocode to Code. arXiv:1906.04908.

The paper itself, not this page. BibTeX from the library's record of the work.

```bibtex
@misc{kulal2019spoc,
  title = {{SPoC: Search-based Pseudocode to Code}},
  author = {Sumith Kulal, Panupong Pasupat, Kartik Chandra, Mina Lee, Oded Padon, Alex Aiken and Percy Liang},
  year = {2019},
  doi = {10.48550/arxiv.1906.04908},
  eprint = {1906.04908},
  archivePrefix = {arXiv},
  url = {https://doi.org/10.48550/arxiv.1906.04908}
}
```

- [← previous On Adversarial Removal of Hypothesis-only Bias in Natural Language Inference](https://md.research.elamur.ai/free/en/papers/belinkov-2019-adversarial-removal-hypothesis-only-bias/)
- [next → A Unified Linear-Time Framework for Sentence-Level Discourse Parsing](https://md.research.elamur.ai/free/en/papers/lin-2019-unified-linear-time-framework-sentence/)
- [↑ back to papers of 2019](https://md.research.elamur.ai/free/en/papers/2019/page/5/)

## References

44 references, 14 of them with a card of ours. ↗ leads to the work, «find» searches for one we have no id for yet.

1. M. Allamanis, M. Brockschmidt, and M. Khademi. [Learning to represent programs with graphs](https://md.research.elamur.ai/free/en/papers/allamanis-2017-learning-represent-programs-graphs/). In International Conference on Learning Representations (ICLR), 2018.
2. J. Andreas and D. Klein. Alignment-based compositional semantics for instruction following. In Empirical Methods in Natural Language Processing (EMNLP), 2015. [find](https://scholar.google.com/scholar?q=J%2E+Andreas+and+D%2E+Klein%2E+Alignment%2Dbased+compositional+semantics+for+instruction+following%2E+In+Empirical+Methods+in+Natural+Language+Processing+%28EMNLP%29%2C+2015%2E)
3. S. Bansal and A. Aiken. Automatic generation of peephole superoptimizers. In Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2006. [find](https://scholar.google.com/scholar?q=S%2E+Bansal+and+A%2E+Aiken%2E+Automatic+generation+of+peephole+superoptimizers%2E+In+Architectural+Support+for+Programming+Languages+and+Operating+Systems+%28ASPLOS%29%2C+2006%2E)
4. J. Berant, A. Chou, R. Frostig, and P. Liang. [Semantic parsing on Freebase from question-answer pairs](https://md.research.elamur.ai/free/en/papers/berant-2013-semantic-parsing-freebase-question-answer/). In Empirical Methods in Natural Language Processing (EMNLP), 2013.
5. S. Bhatia, P. Kohli, and R. Singh. Neuro-symbolic program corrector for introductory programming assignments. In International Conference on Software Engineering (ICSE), 2018. [find](https://scholar.google.com/scholar?q=S%2E+Bhatia%2C+P%2E+Kohli%2C+and+R%2E+Singh%2E+Neuro%2Dsymbolic+program+corrector+for+introductory+programming+assignments%2E+In+International+Conference+on+Software+Engineering+%28ICSE%29%2C+2018%2E)
6. J. Devlin, J. Uesato, S. Bhupatiraju, R. Singh, A. Mohamed, and P. Kohli. Robustfill: Neural program learning under noisy i/o. In International Conference on Machine Learning (ICML), 2017. [find](https://scholar.google.com/scholar?q=J%2E+Devlin%2C+J%2E+Uesato%2C+S%2E+Bhupatiraju%2C+R%2E+Singh%2C+A%2E+Mohamed%2C+and+P%2E+Kohli%2E+Robustfill%3A+Neural+program+learning+under+noisy+i%2Fo%2E+In+International+Conference+on+Machine+Learning+%28ICML%29%2C+2017%2E)
7. J. Devlin, J. Uesato, R. Singh, and P. Kohli. Semantic code repair using neuro-symbolic transformation networks. arXiv preprint arXiv:1710.11054, 2017. — [arXiv:1710.11054](https://arxiv.org/abs/1710.11054) [find](https://scholar.google.com/scholar?q=J%2E+Devlin%2C+J%2E+Uesato%2C+R%2E+Singh%2C+and+P%2E+Kohli%2E+Semantic+code+repair+using+neuro%2Dsymbolic+transformation+networks%2E+arXiv+preprint+arXiv%3A1710%2E11054%2C+2017%2E+%E2%80%94+%5BarXiv%3A1710%2E11054%5D%28https%3A%2F%2Farxiv%2Eorg%2Fabs%2F1710%2E)
8. L. Dong and M. Lapata. Coarse-to-fine decoding for neural semantic parsing. In Association for Computational Linguistics (ACL), 2018. [find](https://scholar.google.com/scholar?q=L%2E+Dong+and+M%2E+Lapata%2E+Coarse%2Dto%2Dfine+decoding+for+neural+semantic+parsing%2E+In+Association+for+Computational+Linguistics+%28ACL%29%2C+2018%2E)
9. Y. Feng, R. Martins, Y. Wang, I. Dillig, and T. W. Reps. Component-based synthesis for complex apis. In Principles of Programming Languages (POPL), 2017. [find](https://scholar.google.com/scholar?q=Y%2E+Feng%2C+R%2E+Martins%2C+Y%2E+Wang%2C+I%2E+Dillig%2C+and+T%2E+W%2E+Reps%2E+Component%2Dbased+synthesis+for+complex+apis%2E+In+Principles+of+Programming+Languages+%28POPL%29%2C+2017%2E)
10. J. K. Feser, S. Chaudhuri, and I. Dillig. Synthesizing data structure transformations from input-output examples. In Programming Language Design and Implementation (PLDI), 2015. [find](https://scholar.google.com/scholar?q=J%2E+K%2E+Feser%2C+S%2E+Chaudhuri%2C+and+I%2E+Dillig%2E+Synthesizing+data+structure+transformations+from+input%2Doutput+examples%2E+In+Programming+Language+Design+and+Implementation+%28PLDI%29%2C+2015%2E)
11. S. Gulwani. [Automating string processing in spreadsheets using input-output examples](https://md.research.elamur.ai/free/en/papers/gulwani-2011-automating-string-processing-spreadsheets-input/). ACM SIGPLAN Notices, 46(1):317–330, 2011.
12. R. Gupta, S. Pal, A. Kanade, and S. K. Shevade. Deepfix: Fixing common C language errors by deep learning. In Association for the Advancement of Artificial Intelligence (AAAI), 2017. [find](https://scholar.google.com/scholar?q=R%2E+Gupta%2C+S%2E+Pal%2C+A%2E+Kanade%2C+and+S%2E+K%2E+Shevade%2E+Deepfix%3A+Fixing+common+C+language+errors+by+deep+learning%2E+In+Association+for+the+Advancement+of+Artificial+Intelligence+%28AAAI%29%2C+2017%2E)
13. B. Hartmann, D. MacDougall, J. Brandt, and S. R. Klemmer. What would other programmers do: suggesting solutions to error messages. In Conference on Human Factors in Computing Systems (CHI), 2010. [find](https://scholar.google.com/scholar?q=B%2E+Hartmann%2C+D%2E+MacDougall%2C+J%2E+Brandt%2C+and+S%2E+R%2E+Klemmer%2E+What+would+other+programmers+do%3A+suggesting+solutions+to+error+messages%2E+In+Conference+on+Human+Factors+in+Computing+Systems+%28CHI%29%2C+2010%2E)
14. T. Hashimoto, K. Guu, Y. Oren, and P. Liang. A retrieve-and-edit framework for predicting structured outputs. In Advances in Neural Information Processing Systems (NeurIPS), 2018. [find](https://scholar.google.com/scholar?q=T%2E+Hashimoto%2C+K%2E+Guu%2C+Y%2E+Oren%2C+and+P%2E+Liang%2E+A+retrieve%2Dand%2Dedit+framework+for+predicting+structured+outputs%2E+In+Advances+in+Neural+Information+Processing+Systems+%28NeurIPS%29%2C+2018%2E)
15. S. A. Hayati, R. Olivier, P. Avvaru, P. Yin, A. Tomasic, and G. Neubig. Retrieval-based neural code generation. In Empirical Methods in Natural Language Processing (EMNLP), 2018. [find](https://scholar.google.com/scholar?q=S%2E+A%2E+Hayati%2C+R%2E+Olivier%2C+P%2E+Avvaru%2C+P%2E+Yin%2C+A%2E+Tomasic%2C+and+G%2E+Neubig%2E+Retrieval%2Dbased+neural+code+generation%2E+In+Empirical+Methods+in+Natural+Language+Processing+%28EMNLP%29%2C+2018%2E)
16. S. Iyer, I. Konstas, A. Cheung, and L. S. Zettlemoyer. [Mapping language to code in programmatic context](https://md.research.elamur.ai/free/en/papers/iyer-2018-mapping-language-code-programmatic-context/). In Empirical Methods in Natural Language Processing (EMNLP), 2018.
17. M. Iyyer, W. Yih, and M. Chang. Answering complicated question intents expressed in decomposed question sequences. CoRR, 0, 2016. [find](https://scholar.google.com/scholar?q=M%2E+Iyyer%2C+W%2E+Yih%2C+and+M%2E+Chang%2E+Answering+complicated+question+intents+expressed+in+decomposed+question+sequences%2E+CoRR%2C+0%2C+2016%2E)
18. S. Jha, S. Gulwani, S. A. Seshia, and A. Tiwari. Oracle-guided component-based program synthesis. In International Conference on Software Engineering (ICSE), 2010. [find](https://scholar.google.com/scholar?q=S%2E+Jha%2C+S%2E+Gulwani%2C+S%2E+A%2E+Seshia%2C+and+A%2E+Tiwari%2E+Oracle%2Dguided+component%2Dbased+program+synthesis%2E+In+International+Conference+on+Software+Engineering+%28ICSE%29%2C+2010%2E)
19. G. Klein, Y. Kim, Y. Deng, J. Senellart, and A. M. Rush. [Opennmt: Open-source toolkit for neural machine translation](https://md.research.elamur.ai/free/en/papers/klein-2017-opennmt-open-source-toolkit-neural/). arXiv preprint arXiv:1701.02810, 2017.
20. P. Liang, M. I. Jordan, and D. Klein. Learning dependency-based compositional semantics. In Association for Computational Linguistics (ACL), pages 590–599, 2011. [find](https://scholar.google.com/scholar?q=P%2E+Liang%2C+M%2E+I%2E+Jordan%2C+and+D%2E+Klein%2E+Learning+dependency%2Dbased+compositional+semantics%2E+In+Association+for+Computational+Linguistics+%28ACL%29%2C+pages+590%E2%80%93599%2C+2011%2E)
21. X. V. Lin, C. Wang, L. S. Zettlemoyer, and M. D. Ernst. Nl2bash: A corpus and semantic parser for natural language interface to the linux operating system. In Language Resources and Evaluation Conference (LREC), 2018. [find](https://scholar.google.com/scholar?q=X%2E+V%2E+Lin%2C+C%2E+Wang%2C+L%2E+S%2E+Zettlemoyer%2C+and+M%2E+D%2E+Ernst%2E+Nl2bash%3A+A+corpus+and+semantic+parser+for+natural+language+interface+to+the+linux+operating+system%2E+In+Language+Resources+and+Evaluation+Confere)
22. W. Ling, E. Grefenstette, K. M. Hermann, T. Kočiský, A. Senior, F. Wang, and P. Blunsom. [Latent predictor networks for code generation](https://md.research.elamur.ai/free/en/papers/ling-2016-latent-predictor-networks-code-generation/). In Association for Computational Linguistics (ACL), pages 599–609, 2016.
23. R. Long, P. Pasupat, and P. Liang. [Simpler context-dependent logical forms via model projections](https://md.research.elamur.ai/free/en/papers/long-2016-simpler-context-dependent-logical-forms/). In Association for Computational Linguistics (ACL), 2016.
24. M. Luong, H. Pham, and C. D. Manning. [Effective approaches to attention-based neural machine translation](https://md.research.elamur.ai/free/en/papers/luong-2015-effective-approaches-attention-based-neural/). In Empirical Methods in Natural Language Processing (EMNLP), pages 1412–1421, 2015.
25. V. Marko, K. Aditya, M. Petros, B. David, and S. Rishabh. Neural program repair by jointly learning to localize and repair. In International Conference on Learning Representations (ICLR), 2019. [find](https://scholar.google.com/scholar?q=V%2E+Marko%2C+K%2E+Aditya%2C+M%2E+Petros%2C+B%2E+David%2C+and+S%2E+Rishabh%2E+Neural+program+repair+by+jointly+learning+to+localize+and+repair%2E+In+International+Conference+on+Learning+Representations+%28ICLR%29%2C+2019%2E)
26. H. Massalin. Superoptimizer – a look at the smallest program. In Architectural Support for Programming Languages and Operating Systems (ASPLOS), 1987. [find](https://scholar.google.com/scholar?q=H%2E+Massalin%2E+Superoptimizer+%E2%80%93+a+look+at+the+smallest+program%2E+In+Architectural+Support+for+Programming+Languages+and+Operating+Systems+%28ASPLOS%29%2C+1987%2E)
27. Y. Oda, H. Fudaba, G. Neubig, H. Hata, S. Sakti, T. Toda, and S. Nakamura. Learning to generate pseudo-code from source code using statistical machine translation. IEEE/ACM International Conference on Automated Software Engineering (ASE), 30:574–584, 2015. [find](https://scholar.google.com/scholar?q=Y%2E+Oda%2C+H%2E+Fudaba%2C+G%2E+Neubig%2C+H%2E+Hata%2C+S%2E+Sakti%2C+T%2E+Toda%2C+and+S%2E+Nakamura%2E+Learning+to+generate+pseudo%2Dcode+from+source+code+using+statistical+machine+translation%2E+IEEE%2FACM+International+Conference+on)
28. E. Parisotto, A. Mohamed, R. Singh, L. Li, D. Zhou, and P. Kohli. [Neuro-symbolic program synthesis](https://md.research.elamur.ai/free/en/papers/parisotto-2016-neuro-symbolic-program-synthesis/). In International Conference on Learning Representations (ICLR), 2017.
29. M. Rabinovich, M. Stern, and D. Klein. Abstract syntax networks for code generation and semantic parsing. In Association for Computational Linguistics (ACL), 2017. [find](https://scholar.google.com/scholar?q=M%2E+Rabinovich%2C+M%2E+Stern%2C+and+D%2E+Klein%2E+Abstract+syntax+networks+for+code+generation+and+semantic+parsing%2E+In+Association+for+Computational+Linguistics+%28ACL%29%2C+2017%2E)
30. E. Schkufza, R. Sharma, and A. Aiken. Stochastic superoptimization. In Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2013. [find](https://scholar.google.com/scholar?q=E%2E+Schkufza%2C+R%2E+Sharma%2C+and+A%2E+Aiken%2E+Stochastic+superoptimization%2E+In+Architectural+Support+for+Programming+Languages+and+Operating+Systems+%28ASPLOS%29%2C+2013%2E)
31. K. Shi, J. Steinhardt, and P. Liang. FrAngel: Component-based synthesis with control structures. In Principles of Programming Languages (POPL), 2019. [find](https://scholar.google.com/scholar?q=K%2E+Shi%2C+J%2E+Steinhardt%2C+and+P%2E+Liang%2E+FrAngel%3A+Component%2Dbased+synthesis+with+control+structures%2E+In+Principles+of+Programming+Languages+%28POPL%29%2C+2019%2E)
32. A. Solar-Lezama, L. Tancau, R. Bodik, V. Saraswat, and S. Seshia. Combinatorial sketching for finite programs. In Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2006. [find](https://scholar.google.com/scholar?q=A%2E+Solar%2DLezama%2C+L%2E+Tancau%2C+R%2E+Bodik%2C+V%2E+Saraswat%2C+and+S%2E+Seshia%2E+Combinatorial+sketching+for+finite+programs%2E+In+Architectural+Support+for+Programming+Languages+and+Operating+Systems+%28ASPLOS%29%2C+2006%2E)
33. R. Tate, M. Stepp, Z. Tatlock, and S. Lerner. Equality saturation: a new approach to optimization. In Principles of Programming Languages (POPL), 2009. [find](https://scholar.google.com/scholar?q=R%2E+Tate%2C+M%2E+Stepp%2C+Z%2E+Tatlock%2C+and+S%2E+Lerner%2E+Equality+saturation%3A+a+new+approach+to+optimization%2E+In+Principles+of+Programming+Languages+%28POPL%29%2C+2009%2E)
34. Z. Tu, Z. Lu, Y. Liu, X. Liu, and H. Li. [Modeling coverage for neural machine translation](https://md.research.elamur.ai/free/en/papers/tu-2016-modeling-coverage-neural-machine-translation/). In Association for Computational Linguistics (ACL), 2016.
35. D. Vadas and J. R. Curran. Programming with unrestricted natural language. In Australasian Language Technology Workshop (ALTA), 2005. [find](https://scholar.google.com/scholar?q=D%2E+Vadas+and+J%2E+R%2E+Curran%2E+Programming+with+unrestricted+natural+language%2E+In+Australasian+Language+Technology+Workshop+%28ALTA%29%2C+2005%2E)
36. A. Vaswani, N. Shazeer, N. Parmar, J. Uszkoreit, L. Jones, A. N. Gomez, L. Kaiser, and I. Polosukhin. [Attention is all you need](https://md.research.elamur.ai/free/en/papers/vaswani-2017-attention-all-need/). arXiv preprint arXiv:1706.03762, 2017.
37. O. Vinyals, M. Fortunato, and N. Jaitly. Pointer networks. In Advances in Neural Information Processing Systems (NeurIPS), pages 2674–2682, 2015. [find](https://scholar.google.com/scholar?q=O%2E+Vinyals%2C+M%2E+Fortunato%2C+and+N%2E+Jaitly%2E+Pointer+networks%2E+In+Advances+in+Neural+Information+Processing+Systems+%28NeurIPS%29%2C+pages+2674%E2%80%932682%2C+2015%2E)
38. N. Yaghmazadeh, C. Klinger, I. Dillig, and S. Chaudhuri. Synthesizing transformations on hierarchically structured data. In Programming Language Design and Implementation (PLDI), 2016. [find](https://scholar.google.com/scholar?q=N%2E+Yaghmazadeh%2C+C%2E+Klinger%2C+I%2E+Dillig%2C+and+S%2E+Chaudhuri%2E+Synthesizing+transformations+on+hierarchically+structured+data%2E+In+Programming+Language+Design+and+Implementation+%28PLDI%29%2C+2016%2E)
39. N. Yaghmazadeh, Y. Wang, I. Dillig, and T. Dillig. Sqlizer: Query synthesis from natural language. In Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 2017. [find](https://scholar.google.com/scholar?q=N%2E+Yaghmazadeh%2C+Y%2E+Wang%2C+I%2E+Dillig%2C+and+T%2E+Dillig%2E+Sqlizer%3A+Query+synthesis+from+natural+language%2E+In+Object%2DOriented+Programming%2C+Systems%2C+Languages%2C+and+Applications+%28OOPSLA%29%2C+2017%2E)
40. P. Yin and G. Neubig. [A syntactic neural model for general-purpose code generation](https://md.research.elamur.ai/free/en/papers/yin-2017-syntactic-neural-model-general-purpose/). In Association for Computational Linguistics (ACL), pages 440–450, 2017.
41. M. Zavershynskyi, A. Skidanov, and I. Polosukhin. NAPS: Natural program synthesis dataset. In Workshop on Neural Abstract Machines & Program Induction (NAMPI), 2018. [find](https://scholar.google.com/scholar?q=M%2E+Zavershynskyi%2C+A%2E+Skidanov%2C+and+I%2E+Polosukhin%2E+NAPS%3A+Natural+program+synthesis+dataset%2E+In+Workshop+on+Neural+Abstract+Machines+%26+Program+Induction+%28NAMPI%29%2C+2018%2E)
42. M. Zelle and R. J. Mooney. [Learning to parse database queries using inductive logic programming](https://md.research.elamur.ai/free/en/papers/zelle-1996-learning-parse-database-queries-using/). In Association for the Advancement of Artificial Intelligence (AAAI), pages 1050–1055, 1996.
43. L. S. Zettlemoyer and M. Collins. Online learning of relaxed CCG grammars for parsing to logical form. In Empirical Methods in Natural Language Processing and Computational Natural Language Learning (EMNLP/CoNLL), pages 678–687, 2007. [find](https://scholar.google.com/scholar?q=L%2E+S%2E+Zettlemoyer+and+M%2E+Collins%2E+Online+learning+of+relaxed+CCG+grammars+for+parsing+to+logical+form%2E+In+Empirical+Methods+in+Natural+Language+Processing+and+Computational+Natural+Language+Learning+%28)
44. V. Zhong, C. Xiong, and R. Socher. [Seq2SQL: Generating structured queries from natural language using reinforcement learning](https://md.research.elamur.ai/free/en/papers/zhong-2017-seq2sql-generating-structured-queries-natural/). arXiv preprint arXiv:1709.00103, 2017.

*Updated 2 November 2026*
