9 月 13 日,2025 Inclusion・外滩大会「开源嘉年华」正在限量报名中! 了解详情
写点什么

微软发布了 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:245461
用户头像

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

关注

评论

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

YashanDB的独特特性吸引了哪些开发者?

数据库砖家

YashanDB的用户体验:如何改善用户交互设计?

数据库砖家

YashanDB自定义报表功能使用指南

数据库砖家

运维效率提升35%+成本降低40%:低代码开发在企业数字化运维体系中的规模化落地方法论

不在线第一只蜗牛

低代码

6月 | 塞讯模拟攻击库更新汇总

塞讯科技

安全验证

一天助你成为Java开发高手,只需做对这件事

飞算JavaAI开发助手

YashanDB的维护与优化技巧:延长系统生命周期

数据库砖家

华为HMS for Car签约Anghami与Nabd,打造面向全球的本地化车机内容生态

极客天地

用好索引的10条军规

量贩潮汐·WholesaleTide

Java 数据库

YashanDB的配置管理与版本控制方法

数据库砖家

YashanDB的生态体系及其未来发展方向

数据库砖家

云原生机密计算新范式 PeerPods技术方案在阿里云上的落地和实践

阿里云基础软件

容器化 ACK Alibaba Cloud Linux PeerPods

飞算 JavaAI 护航电商开发:打造安全无虞的线上购物王国

飞算JavaAI开发助手

飞算科技:国家级高新技术企业

飞算JavaAI开发助手

YashanDB的编码规范与最佳实践分享

数据库砖家

YashanDB的系统维护与管理需要哪些技术底蕴?

数据库砖家

业务提效超5倍,转化率翻番!AI+MCP 如何重塑个性化投资诊断优化报告

盈米AI开放平台

基金 AI 智能体 MCP

Java 高手修炼秘籍:超实用AI工具合集助你快速提升

飞算JavaAI开发助手

Nexpose 8.13.0 for Linux & Windows - 漏洞扫描

sysin

Nexpose

破解大模型运维落地困局 | GOPS大会博睿数据“AI+可观测加速智能运维转型升级”演讲实录

博睿数据

通义灵码软件工程大模型获顶会最高奖!

阿里巴巴云原生

阿里云 通义灵码

YashanDB的版本升级流程,确保平稳过渡

数据库砖家

1688 Agent Russia 丨俄罗斯淘宝代购1688代采集运系统搭建指南

tbapi

淘宝代购系统 俄罗斯淘宝代购系统 俄罗斯1688代采系统 俄语淘宝系统 俄语1688代采系统

飞算 JavaAI:电商需求分析的精准导航仪

飞算JavaAI开发助手

数智先锋 | Bonree ONE 赋能雅砻江水电构建端到端全链路可观测体系

博睿数据

YashanDB的集群配置:提升可用性的策略

数据库砖家

YashanDB的用户角色管理技巧:保障数据安全

数据库砖家

通义灵码软件工程大模型获顶会最高奖!

阿里云云效

阿里云 通义灵码

【7 月 5 日北京】倒计时 2 天神秘视频公开,大会内容终极剧透

Apache IoTDB

YashanDB的用户界面设计如何提升操作效率

数据库砖家

YashanDB的用户权限管理,如何保障数据安全?

数据库砖家

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