Microsoft is positioning its P language as a solution for asynchrony in a world where this capability is becoming increasingly vital for the cloud, artificial intelligence, and embedded systems.
Geared to asynchronous event-driven programming, the open source P unifies modeling and programming into a single activity. “Today’s software uses cloud resources, is often embedded in devices in the physical world and employs artificial intelligence techniques,” said Shaz Qadeer, a principal researcher at Microsoft.
In P, the protocol and specification are written at a high level. P features a programming model based on concurrently executing state machines communicating via events; each event is accompanied by a typed payload value.
Also, P programs can be compiled into executable C code, bridging the gap between high- and low-level implementation and help programmers accept its formal model and specification, he said.
The language lets engineers model asynchronous interfaces among components in a large Azure service. It also can be used to debug problems on PCs that might otherwise take months or years to manifest after the service is deployed.