Naturalizing A Programming Language
Written by Mike James   
Wednesday, 26 April 2017

This is an interesting idea: take a core programming language and allow the users to teach the system how they want to express their intentions. Instead of trying to use natural language as a computer language, why not develop computer languages in the direction of natural languages?

Research conducted by Sida I. Wang, Samuel Ginn, Percy Liang, and Christopher D. Manning at the Computer Science Department of Stanford University takes a new approach to creating naturalistic command languages. 

Our goal is to create a convenient natural language interface for performing well-specified but complex actions such as analyzing data, manipulating text, and querying databases. However, existing natural language interfaces for such tasks are quite primitive compared to the power one wields with a programming language.

To bridge this gap, we start with a core programming language and allow users to “naturalize” the core language incrementally by defining alternative, more natural syntax and increasingly complex concepts in terms of compositions of simpler ones.

In a voxel world, we show that a community of users can simultaneously teach a common system a diverse language and use it to build hundreds of complex voxel structures. Over the course of three days, these users went from using only the core language to using the naturalized language in 85.9% of the last 10K utterances.

In case you are wondering what a voxel world is there is a video explaining the system:

 

You can even try the system out at the Voxelurn website. 

voxel1

 

Starting from a fairly basic programming language, the system uses semantic parsing to allow ambiguity. Three modes of naturalization were found. The first were short forms for common operations, the second alternative, more natural, syntax and finally higher level operations. Notice that the same language was shared by all of the users - there were no private languages allowed. 

voxel2

 

More Information

Naturalizing a Programming Language via Interactive Learning

http://www.voxelurn.com/

Related Articles

The Red Programming Language

Cutting Edge Languages At Curry On

The Trick Of The Mind - Programming & Algorithmic Thought 

Verbal Expressions Are Easier Than Regular Ones 

MIT - Who Needs Programming Languages? 

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

 

 

Banner


Sequin - Open Source Message Stream Built On Postgres
31/10/2024

Sequin is a tool for capturing changes and streaming data out of your Postgres database, guaranteeing exactly once processing. What does that mean?



Gifts For Geeks 2024
22/11/2024

Are you ready for Thanksgiving, when overeating remorse and a surfeit of being thankful causes the unsettling thought that there are only four weeks till the Xmas break? So here is a mix of weird [ ... ]


More News

 

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

 

 

 

Last Updated ( Thursday, 27 April 2017 )