Forum for Science, Industry and Business

Sponsored by:     3M 
Search our Site:

 

Computer programming made easier

16.08.2016

Harnessing automated program synthesis allows non-programmers to create working code

Nobody said computer programming was easy. But maybe in the future, it could be.


Automata Tutor, developed with NSF support, grades answers to a programming problem.

Credit: ExCAPE

In order to simplify program development, a National Science Foundation (NSF)-supported project called Expeditions in Computer Augmented Program Engineering (ExCAPE), is developing technology that provides human operators with automated assistance.

"Computers have revolutionized our daily lives, and yet the way we program computers has changed little in the last several decades," said Rajeev Alur, a professor in the department of computer and information science at the University of Pennsylvania.

Alur heads a team of researchers -- representing nine leading computer science programs in the U.S. -- that collaborates on the ExCAPE project. NSF supports ExCAPE with a $10 million, five-year Expeditions in Computing award, which funds interdisciplinary research teams working to transform computing and technology.

Alur said the team is taking on a longstanding problem: "Software development remains a tedious and error-prone activity."

Using a model of programming called automated program synthesis, however, computers can generate pieces of code based on a user's intent, expressed using various non-code-based forms, such as examples, demonstrations or natural language commands.

"ExCAPE aims to change programming from a purely manual task to one in which a programmer and an automated program synthesis tool can collaborate to generate software that meets its specification," Alur said.

By removing the need for would-be programmers to learn esoteric programming languages, the method has the potential to significantly expand the number of people engaged in programming in a variety of disciplines, from personalized education to robotics.

Programming tools

Emerging technology known as Software-Defined Networks (SDN) allows network operators to tailor a computer network to the traffic running on it, thereby improving efficiency. Most network operators, however, are not traditional programmers and, as a result, cannot take full advantage of all the technology offers.

To address this shortcoming, the ExCAPE team developed a tool called NetEgg that lets a network operator specify the desired functionality of a switch using examples. NetEgg then automatically generates the code needed to implement that behavior while ensuring maximal throughput for network traffic.

Now patented, NetEgg has already been tested in a classroom setting and forms the basis of an NSF I-Corps project, which will explore the product's transition to commercial deployment.

Computer-aided education and beyond

Looking at the growing area of online learning, the ExCAPE team further recognized the role that program synthesis tools could play in generating automatic feedback for students -- analyzing their solutions, grading their assignments, and providing meaningful explanations of their mistakes.

That's why the team created Automata Tutor, which has been used by more than 5,000 students from more than 10 universities around the world. Alur and his colleagues presented the results from the early deployment of Automata Tutor in ACM Transactions on Computer-Human Interaction and at the International Joint Conference on Artificial Intelligence.

The group has created other tools, including AutoProf, which provides feedback on introductory programming assignments in computer languages, such as Python. Another tool, CPSgrader, automatically grades laboratory courses in cyber-physical systems and provides feedback.

More broadly, the ExCAPE team was able to develop a method that formalized and standardized the core computational problem in emerging synthesis tools. Called Syntax-Guided Synthesis, the new method has allowed the team to build a number of prototype solvers over the past two years.

"This effort has been instrumental in advancing the state-of-the-art in computational approaches, and it has facilitated novel applications of program synthesis, for instance, in automatic optimization of programs for quantum computers," Alur said.

Industry adoption

The ExCAPE team's research has affected the commercial software world, too. Its notion of syntax-guided synthesis inspired Microsoft to create automated program synthesizers for its suite of software.

"At Microsoft, we have invested significantly in the field of program synthesis, especially programming-by-examples, and with applications to end-user programming," said Sumit Gulwani, of Microsoft Research, USA.

Microsoft started out by developing domain-specific synthesizers such as FlashFill and FlashExtract, each of which uses examples to generate custom code that improves efficiency. FlashFill, which was released as a feature of Microsoft's Excel 2013, allows data entered into one column of a worksheet table to be entered in a new table column using only a few keystrokes. FlashExtract, which was included in Microsoft's PowerShell and Operations Management Suite, extracts structured data from semi-structured log files using examples.

The technology giant has also developed a generic programming-by-example synthesizer called FlashMeta.

"All of our ongoing development of by-example synthesizers at Microsoft for various domains is now being carried out over the FlashMeta framework," Gulwani said. "In fact, we have set up an entire research and engineering team for development of this framework, called PROSE. This has yielded one order of magnitude effectiveness in the overall development process."

In years to come, the process of using coding languages for programming may be seen as an evolutionary step in computing, just as other methods replaced the punch cards and assembly languages used to program early computers.

"This project builds on decades of foundational advances in formal methods and programming languages," says Nina Amla, program director in the Division of Computing and Communication Foundations at NSF. "It signals a paradigm shift in the way we teach basic programming principles, and develop reliable software systems."

Media Contact

Aaron Dubrow
adubrow@nsf.gov
703-292-4489

 @NSF

http://www.nsf.gov 

Aaron Dubrow | EurekAlert!

More articles from Information Technology:

nachricht Five developments for improved data exploitation
19.04.2017 | Deutsches Forschungszentrum für Künstliche Intelligenz GmbH, DFKI

nachricht Smart Manual Workstations Deliver More Flexible Production
04.04.2017 | Deutsches Forschungszentrum für Künstliche Intelligenz GmbH, DFKI

All articles from Information Technology >>>

The most recent press releases about innovation >>>

Die letzten 5 Focus-News des innovations-reports im Überblick:

Im Focus: Making lightweight construction suitable for series production

More and more automobile companies are focusing on body parts made of carbon fiber reinforced plastics (CFRP). However, manufacturing and repair costs must be further reduced in order to make CFRP more economical in use. Together with the Volkswagen AG and five other partners in the project HolQueSt 3D, the Laser Zentrum Hannover e.V. (LZH) has developed laser processes for the automatic trimming, drilling and repair of three-dimensional components.

Automated manufacturing processes are the basis for ultimately establishing the series production of CFRP components. In the project HolQueSt 3D, the LZH has...

Im Focus: Wonder material? Novel nanotube structure strengthens thin films for flexible electronics

Reflecting the structure of composites found in nature and the ancient world, researchers at the University of Illinois at Urbana-Champaign have synthesized thin carbon nanotube (CNT) textiles that exhibit both high electrical conductivity and a level of toughness that is about fifty times higher than copper films, currently used in electronics.

"The structural robustness of thin metal films has significant importance for the reliable operation of smart skin and flexible electronics including...

Im Focus: Deep inside Galaxy M87

The nearby, giant radio galaxy M87 hosts a supermassive black hole (BH) and is well-known for its bright jet dominating the spectrum over ten orders of magnitude in frequency. Due to its proximity, jet prominence, and the large black hole mass, M87 is the best laboratory for investigating the formation, acceleration, and collimation of relativistic jets. A research team led by Silke Britzen from the Max Planck Institute for Radio Astronomy in Bonn, Germany, has found strong indication for turbulent processes connecting the accretion disk and the jet of that galaxy providing insights into the longstanding problem of the origin of astrophysical jets.

Supermassive black holes form some of the most enigmatic phenomena in astrophysics. Their enormous energy output is supposed to be generated by the...

Im Focus: A Quantum Low Pass for Photons

Physicists in Garching observe novel quantum effect that limits the number of emitted photons.

The probability to find a certain number of photons inside a laser pulse usually corresponds to a classical distribution of independent events, the so-called...

Im Focus: Microprocessors based on a layer of just three atoms

Microprocessors based on atomically thin materials hold the promise of the evolution of traditional processors as well as new applications in the field of flexible electronics. Now, a TU Wien research team led by Thomas Müller has made a breakthrough in this field as part of an ongoing research project.

Two-dimensional materials, or 2D materials for short, are extremely versatile, although – or often more precisely because – they are made up of just one or a...

All Focus news of the innovation-report >>>

Anzeige

Anzeige

Event News

Expert meeting “Health Business Connect” will connect international medical technology companies

20.04.2017 | Event News

Wenn der Computer das Gehirn austrickst

18.04.2017 | Event News

7th International Conference on Crystalline Silicon Photovoltaics in Freiburg on April 3-5, 2017

03.04.2017 | Event News

 
Latest News

NASA's Fermi catches gamma-ray flashes from tropical storms

25.04.2017 | Physics and Astronomy

Researchers invent process to make sustainable rubber, plastics

25.04.2017 | Materials Sciences

Transfecting cells gently – the LZH presents a GNOME prototype at the Labvolution 2017

25.04.2017 | Life Sciences

VideoLinks
B2B-VideoLinks
More VideoLinks >>>