写点什么

微软发布了 Axum

  • 2009-05-12
  • 本文字数:849 字

    阅读完需:约 3 分钟

Axum 是微软开发的并行编程语言,目前还处在试验阶段,两周前 InfoQ 公布了这个项目的发布计划。现在,Axum 的一个初期版本(v0.1)已经发布并提供下载

Axum 目前仍然是一个试验性的项目,微软 DevLabs 表示此次发布的版本,其主要目的是希望收集来自社区的反馈:

无论 Axum 最终是否会成为一个产品,是否能使并行编程变得更安全、更易于扩展和更高效,(社区的)反馈都是它成功的最大因素。

Axum 曾经叫做 Maestro,它的目标是提供一个.NET 环境下的并行编程模型,支持隔离、actor 和消息传递。此语言借鉴了很多 Erlang 语言的元素,不过拥有类似 C#的语法。

Axum 是一个拥有类似 C#语法的命令式语言,它面向 actor 和域(domain),而不是面向对象的,因此它拥有对象的概念,但是不能自定义类。Axum 主要用途是解决并发处理问题,它基于微软机器人实验室的 CCR ,其他.NET 平台的编程语言可以通过调用 Axum 来实现并发处理。

并行安全的最大障碍是共享数据。在 Axum 中使用共享数据之前需要进行声明,这样运行时就会控制数据访问的过程。语言中已经内建了并发控制机制。

Axum 的主要元素是域。域是一个资源仓库,它是数据、代理和函数的集合。域与域之间是相互隔离的,以此保护它们各自独立或共享的数据。域中的所有代理可以共享域中的数据,代理之间通过信道(Channel)来交换消息,而域中的函数都是无状态的。不同域的代理之间在通信时需要某种元数据来进行协调,这些元数据便是“架构(Schema)”。

基本上,一个代理就是可以和其他代理进行通信的线程,它们通过添加 reader 或 writer 的声明来访问共享数据:

复制代码
domain A {
int i;
int func(int k){}
writer agent X: Channel1 {}
reader agent Y: Channel2{}
}
domain B {
int j;
agent Z: Channel1 {}
}

域与域之间通过代理进行通信可以用下图来表示:

axum

您需要安装 Visual Studio 2008 才能使用 Axum。

相关链接:下载 Axum 语言规范(PDF), Axum 用户手册(PDF), Axum 项目组博客

查看英文原文: Axum, Microsoft’s Approach to Parallelism Microsoft Has Released Axum

2009-05-12 10:245133
用户头像

发布了 63 篇内容, 共 24.8 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

中国信通院云大所与dbaplus社群开启战略合作,共同推动多项标准落地

dbaplus社群

Java版本发布历史

hasWhere

Python——嵌套

在即

6月日更

JAVA语言基础(五)--数组

加百利

Java 后端 6月日更

技术干货 | Windows桌面端录屏采集实现教程

ZEGO即构

RTC 录屏采集

推理综艺的正确打开方式!爱奇艺玩转智能技术,“互动+内容”引爆迷综季

爱奇艺技术产品团队

Flink State 和 Fault Tolerance(二)

Alex🐒

flink 翻译 flink1.13

性能排查常用Linux命令

hasWhere

华云大咖说 | 华云数据与福昕鲲鹏携手共建国产云生态

华云数据

干货|车来了APM应用性能体验实践

APM App 稳定性 APP稳定性

OpenKruise :SidecarSet 助力 Mesh 容器热升级

阿里巴巴云原生

容器 云原生

一文读懂云原生 go-zero 微服务框架

晨雨听风

GitHub Web Go 语言

Cilium 首次集成国内云服务,阿里云 ENI 被纳入新版本特性

阿里巴巴云原生

容器 云原生

架构训练营模块 6 作业 - 江哲

江哲

Windows Core Audio 音频开发技术指南

拍乐云Pano

开发效率提升50%以上,爱奇艺官网主站的Nuxt实践

爱奇艺技术产品团队

大前端 开发 nuxt

bzz节点挖矿分发系统开发案例

薇電13242772558

区块链

好的目标管理:SMART原则

石云升

创业 职场经验 管理经验 6月日更

RDMA打造存储利器

焱融科技

文件 高性能 数据中心 分布式存储

IDEA搭建DCM4CHEE开发环境

birdbro

intellij-idea 医学影像 DICOM PACS DCM4CHE

物联网发展,行业新领域

anyRTC开发者

音视频 WebRTC 智能硬件 智能安防 实时通讯

云图说|数据仓库服务 GaussDB(DWS) 的“千里眼、顺风耳”—数据库智能运维

华为云开发者联盟

数据库 数据仓库 GaussDB(DWS) 云图说 数据仓库服务

标准物模型:设备无缝对接,IOT界的福音

华为云开发者联盟

物联网 IoT 物模型 标准物模型 IoT Stage

618技术特辑(四)疯狂剁手的同时,电商隐私安全你注意到了吗?

华为云开发者联盟

电商 数据安全 云安全 618 隐私安全

Flink+Hologres助力伊的家电商平台建设新一代实时数仓

Apache Flink

flink

超全Redis命令总结,墙裂建议收藏,说不定就用上了呢

北游学Java

Java redis

Java性能问题定位命令

hasWhere

【架构师训练营】电商业务微服务拆分设计

eoeoeo

cpu突然变高定位步骤

hasWhere

AI 转型必看|算法工程师的 AI 启示录

百度大脑

人工智能

618技术特辑(三)直播带货王,“OMG买它”的背后,为什么是一连串技术挑战?

华为云开发者联盟

CDN 直播 618 低时延 视频直播

微软发布了Axum_.NET_Abel Avram_InfoQ精选文章