Programavimas

„Microsoft“ atvirojo kodo P kalba IoT

„Microsoft“ P kalba, skirta asinchroniniam įvykių valdomam programavimui ir daiktų internetui, buvo atvira.

Įterptosioms sistemoms, įrenginių tvarkyklėms ir paskirstytosioms paslaugoms pritaikyta „P“ yra domenui būdinga kalba, kurią kompiliuoja ir sąveikauja su „C“, kuri pati dažniausiai naudojama įterptosiose sistemose ir daiktų internete. „P tikslas yra suteikti kalbos pradmenims glaustai ir tiksliai užfiksuoti protokolus, kurie būdingi bendravimui tarp komponentų“, - sakė Ethanas Jacksonas ir „Shaz Qadeer“ iš „Microsoft“ kalbos pamokoje.

Naudojant P, modeliavimas ir programavimas sujungiami į vieną veiklą. „P programą galima ne tik sukompiliuoti į vykdomąjį kodą, bet ir patvirtinti naudojant sisteminį testavimą“, teigiama kalbos dokumentuose „GitHub“. "P buvo naudojamas įdiegti ir patvirtinti USB įrenginio tvarkyklės šūsnį, kuris pristatomas kartu su" Microsoft Windows 8 "ir" Windows Phone "."

„Microsoft“ apibūdino „P“ kaip „saugų“ programavimą, pagrįstą įvykiais. Savo pamokoje Jacksonas ir „Qadeer“ teigia, kad P programos turi skaičiavimo modelį, kuriame pateikiamos būsenos mašinos, bendraujančios pranešimais, šis metodas paprastai naudojamas įterptosiose, tinklinėse ir paskirstytose sistemose.

Kiekvienoje būsenos mašinoje yra kintamųjų rinkinio įvesties eilė, būsenos, perėjimai, įvykių tvarkytuvai ir mašinų vietinė saugykla. Būsenos mašinos veikia vienu metu, kiekvienai vykdant įvykių kilpą, kuri pašalina pranešimą iš įvesties eilės. Valstybinė mašina taip pat tiria vietinę parduotuvę, siunčia pranešimus tarp mašinų ir gali sukurti naujas mašinas. "P, siuntimo operacija nėra blokuojama; pranešimas tiesiog vykdomas į tikslinės mašinos įvesties eilę." Programoje yra įvykių ir mašinų deklaracijų rinkinys.

„Microsoft“ taip pat siūlo atvirąjį kodą „P #“, C # plėtinį, kuris skirtas asinchroniniam programavimui. Birželį „Microsoft“ atvirasis šaltinis „Checked C“ - modifikuota C versija, kuri prideda naują sintaksę ir spausdinimą į C kalbą, siekdama pagerinti C saugą.

$config[zx-auto] not found$config[zx-overlay] not found