Аксум (програмски јазик)

Аксум (претходно со кодно име Maestro) е специфичен домеснки програмски јазик, базиран на моделот Actor, кој бил во активен развој од Microsoft помеѓу 2009 и 2011 година. Тој е објектно-ориентиран јазик заснован на .NET Common Language Runtime со користење на синтакса слична на C, која, како јазик специфичен за домен, е наменет за развој на делови од софтверска апликација која истовремено е добро прилагодена. Но, содржи доволно конструкции за општа намена што не треба да се префрли на програмски јазик за општа намена (како C# ) за секвенцијалните делови од истовремените компоненти.

Главниот идиом на програмирањето во Аксум е Агент (или Актор), кој е изолиран ентитет кој се извршува паралелно со другите агенти. На јазикот на Аксум, ова се нарекува агенти кои извршуваат посебни изолациски домени; објектите инстанцирани во домен од страна на  други не можат директно да се пристапат. Агентите се лабаво поврзани (т.е., бројот на зависности помеѓу агентите е минимален) и не споделуваат ресурси како меморија (за разлика од моделот за заедничка меморија на C# и слични јазици); наместо тоа се користи модел за пренесување пораки. За да се координираат агентите или да има некој агент да бара ресурси од друг, мора да се испрати експлицитна порака до агентот. Аксум обезбедува канали за да го олесни ова.

Каналите може да се сметаат како насочувачки пат за комуникација помеѓу инстанци на агенти. Функциите за член на објектот на Каналот, откако ќе се врзат за пример на агент, може да се користат и за комуникација со него. Каналот содржи влезни и излезни порти, кои се редици кои се користат за испраќање податоци до агент или примање податоци од еден. За да ја координира комуникацијата помеѓу агентите, Аксум дозволува секој канал да има протокол за комуникација дефиниран од корисникот. Протоколот е дефиниран како државна машина. Податоците испратени преку канал може опционално да се ограничат за да одговараат на однапред одредена  дефинирана шема. Компајлерот и времето за извршување ќе ја наметнат усогласеноста со шемата. Под хаубата, шемата е преведена во серијализирање. NET класа која содржи само својства и методи без несакани ефекти.

Проектот Аксум достигна состојба на прототип со работна интеграција на Microsoft Visual Studio. Мајкрософт го направи CTP на Аксум достапен за јавноста, но тој оттогаш е отстранет. Иако Microsoft одлучи да не го претвори Аксум во проект, некои од идеите зад него се користат во TPL Dataflow во Net 4,5.

 Наводи 

Категорија:Објектно-ориентирани програмски јазици