Writing programs using ordinary language: Implications for computing education

July 31, 2013 at 1:36 am 2 comments

Once upon a time, all computer scientists understood how floating point numbers were represented in binary.  Numerical methods was an important part of every computing curriculum.  I know few undergraduate programs that require numerical methods today.

Results like the below make me think about what else we teach that will one day become passé, irrelevant, or automatized.  The second result is particularly striking.  If descriptions from programming competitions can lead to automatic program generation, what does that imply about what we’re testing in programming competitions — and why?

The researchers’ recent papers demonstrate both approaches. In work presented in June at the annual Conference of the North American Chapter of the Association for Computational Linguistics, Barzilay and graduate student Nate Kushman used examples harvested from the Web to train a computer system to convert natural-language descriptions into so-called “regular expressions”: combinations of symbols that enable file searches that are far more flexible than the standard search functions available in desktop software.

In a paper being presented at the Association for Computational Linguistics’ annual conference in August, Barzilay and another of her graduate students, Tao Lei, team up with professor of electrical engineering and computer science Martin Rinard and his graduate student Fan Long to describe a system that automatically learned how to handle data stored in different file formats, based on specifications prepared for a popular programming competition.

via Writing programs using ordinary language – MIT News Office.

Entry filed under: Uncategorized. Tags: , , .

Taking a test is better than studying, even if you just guess: We need to flip the flipped classroom LAUSD has a $543M shortfall, but is spending $500M on iPads?

2 Comments Add your own

  • 1. joshg  |  July 31, 2013 at 10:43 am

    This is neat, but keep in mind it’s in a very limited domain. Regexps are a pattern matching syntax, nothing more.

    Another example that’s been around for a few years now is Inform 7. It expects the English grammar to be structured a certain way, but is a fairly powerful rule-based programming language for writing interactive fiction. (I don’t know if I7 is a notably stronger example of natural language programming than the regexp project, but anyone impressed by this research should probably at least be aware of I7 since it’s out there and usable already.)

    • 2. Mark Guzdial  |  July 31, 2013 at 11:14 am

      Agreed. I’m a fan of Inform 7 and used to write about it when I did this blog on Amazon.com. I find its notional machine fascinating.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trackback this post  |  Subscribe to the comments via RSS Feed

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 9,052 other followers


Recent Posts

Blog Stats

  • 2,030,198 hits
July 2013

CS Teaching Tips

%d bloggers like this: