P is a programming language that was developed by Microsoft. P enables programmers to specify systems consisting of a collection of state machines that communicate asynchronously in terms of events. Code can be run on Microsoft Windows and Windows Phone, and is now open source.