Microsoft met en open source le langage de programmation P adapté à l’IoT

Microsoft Langage P

Développé et utilisé en interne par Microsoft pour des développements notamment de pilotes de périphériques comme l’USB, le langage de programmation P est désormais accessible en open source ...et sera maintenant géré par une communauté de développeurs. La particularité de P est qu’il s’agit d’un langage asynchrone, basé événement, qui permet de formaliser à la fois un modèle et son codage avec, à la clé, la possibilité de générer les fichiers de tests correspondant au code généré. Il s’agit en fait de représenter une suite d’actions sous la forme de machines d’états qui réagissent en fonctions d’événements.

Le langage dispose d’un compilateur ad hoc et peut être associé à du code C compilé traditionnel. Selon Microsoft, un des atouts du langage P est de pouvoir décrire de manière synthétique des protocoles de communication entre sous-ensembles de systèmes embarqués qui “discutent“ ensemble en mode asynchrone. Toujours selon Microsoft, ce langage a en particulier été mis en œuvre pour développer et vérifier la pile logicielle du pilote USB pour les systèmes d’exploitation Windows 8 et Windows Phone.

Parallèlement, Microsoft a aussi choisi de mettre à la disposition des développeurs en mode open source les langages P#, extension du langage C# utilisé en programmation asynchrone, et Checked C, une variante du C qui ajoute des syntaxes spécifiques pour la partie sécurité d’un code.

Les documentations et la présentation complète du langage P sont accessibles ici sur un compte GitHub.