Project Logo

About Tellina

Star Fork Issue

Tellina is a tool that automatically translates natural language command of programmers into a programming language. Currently Tellina supports the Linux shell command as its target language.

Source Code & Data

The source code for our website and machine learning module is publicly available on Github.

Publications

If you use Tellina in your work, please cite the following papers accordingly.

Program Synthesis from Natural Language Using Recurrent Neural Networks
@techreport{LinWPVZE2017:TR, 
  author = {Xi Victoria Lin and Chenglong Wang and Deric Pang and Kevin Vu and Luke Zettlemoyer and Michael D. Ernst}, 
  title = {Program synthesis from natural language using recurrent neural networks}, 
  institution = {University of Washington Department of Computer Science and Engineering}, 
  number = {UW-CSE-17-03-01}, 
  address = {Seattle, WA, USA}, 
  month = mar, 
  year = {2017} 
}

Technical Details Explained

Augmented Seq2Seq: A Stage-Wised Approach

Sub-token CopyNet: An End-to-End Approach

We expect any state-of-the-art neural machine translation model to perform competitively on this task, as long as you pay attention to the few details mentioned above (copying, grammar constraints, etc.). The next section benchmarks how "well" Tellina can do so far.

Accuracy & User Impact

Remarks on Future Work

The Unbearable Complication of Bash As the Target Language

So all system adminstrators, you may want to keep an eye on this tool!