Microsoft's 'Casablanca': Taking C++ to the cloud

Microsoft's DevLabs has delivered a new incubation -- a set of libraries for C++ developers interested in consuming and implementing RESTful services.
Written by Mary Jo Foley, Senior Contributing Editor

Microsoft's renewed love of all things C++ is continuing.

On April 30, the DevLabs (Developer Division Labs) rolled out a new set of libraries for C++ developers, codenamed "Casablanca." This set of libraries is designed to make it easier for C++ coders to consume and implement RESTful services, according to a blog post about the release from Microsoft Developer Division Corporate Vice President Soma Somasegar.

"Casablanca is a Microsoft incubation effort to support cloud-based client-server communication in native code using a modern asynchronous C++ API design," explained the DevLabs page.

Casablanca supports the access of REST services from native code on Vista, Windows 7 and the Windows 8 Consumer Preview by providing asynchronous C++ bindings to HTTP, JSON and URIs. There's a Visual Studio extension SDK to help devs write C++ HTTP client side code in Windows 8 Metro-Style apps, and promised support for writing native-code REST for Azure, with Visual Studio integration. (The VS11 Azure supportisn't there yet.)

Casablanca "builds on lessons from .NET, from Node.js, from Erlang, and from other influencers to create a modern model that is meant to be easy to program while still being scalable, composable, and flexible," Somasegar explained.

C#, Visual Basic and F# developers already have robust and scalable networking stacks. And Node.js developers can use the Windows Azure Software Development Kit (SDK) for building scalable network apps using JavaScript, Somasegar blogged. But C++ devs have lacked similar tools  that are optimized for consuming and implementing RESTful cloud services that take advantage of modern C++ features and practices.

Casablanca, like other DevLabs releases, is not guaranteed to become a shipping product or part of a shipping product. It is meant for experimentation and developer feedback.

"We would love to know whether you’re interested in using C++ to consume and implement cloud services, and if so, what kind of support you want in order to do so, whether “Casablanca” is on the right track, and how you’d like to see it evolve," said Somasegar, suggesting users share their two cents in the forums.

Microsoft launched DevLabs in 2008. It is one of the few Microsoft incubation labs that is still outwardly active.

Editorial standards