Select your localized edition:

Close ×

More Ways to Connect

Discover one of our 28 local entrepreneurial communities »

Be the first to know as we launch in new countries and markets around the globe.

Interested in bringing MIT Technology Review to your local market?

MIT Technology ReviewMIT Technology Review - logo


Unsupported browser: Your browser does not meet modern web standards. See how it scores »

{ action.text }

Hellerstein’s group modified an old language called Datalog to enable it to write programs for the cloud. The problem, Hellerstein says, is figuring out how much of a program can happen simultaneously, and identifying times when it absolutely has to stop and gather information about the status of different tasks. The group is currently developing a language called Bloom to provide a “friendly way” for programmers to deal with the often complex syntax of the underlying system based on Datalog.

Hellerstein hopes that Bloom will help programmers write software for the cloud without having to step entirely away from familiar languages. Hellerstein’s group is designing Bloom as a library that can be used with popular languages such as Java and Python. Using Bloom within one of those languages would encourage programmers to design software that uses resources available in the cloud most efficiently. This also saves programmers from having to learn an entirely new language.

Georg Gottlob, a professor at the Oxford University Computing Laboratory and an expert on Datalog, says that using the language to handle Web-scale applications makes a lot of sense. When Datalog was invented, he says, “it came too early” to be used broadly due to the limited processing power at the time. With the proliferation of distributed computing, Gottlob says, the language has seen “a big Renaissance.”

“This is where the future is going,” says Elias Torres, who uses cloud computing tools at several startup companies. Several years ago, Torres was able to use a precursor of Bloom in a project to simplify a complex protocol for distributed systems. “It was enlightening, because I was able to focus on the data flowing through the system,” he says.

Nowadays, Torres says, “you need to understand how the data needs to be stored and organized and accessed in order to make progress.” Any Web application has to deal with an ever-growing magnitude of data, and Torres believes programmers will find tools like Bloom increasing useful.

0 comments about this story. Start the discussion »

Credit: Technology Review

Tagged: Computing, cloud computing, database systems, software engineering, distributed systems, distributed architecture, parallel programming

Reprints and Permissions | Send feedback to the editor

From the Archives


Introducing MIT Technology Review Insider.

Already a Magazine subscriber?

You're automatically an Insider. It's easy to activate or upgrade your account.

Activate Your Account

Become an Insider

It's the new way to subscribe. Get even more of the tech news, research, and discoveries you crave.

Sign Up

Learn More

Find out why MIT Technology Review Insider is for you and explore your options.

Show Me