我的开源项目:表达式引擎 Mages
来源:dev.to — 2026-09-16
📋 概述
作者讲述自己维护的 .NET 表达式解析与求值库 Mages 的来龙去脉。它接收「sin(2) * cos(pi / 4)」这样的字符串返回数值,也支持变量、函数、闭包、对象、列表、复数,近几年还加了一点 JSX。作者希望它扮演的角色是「给你的 .NET 应用一个可嵌入的小型脚本语言」,而不必拖进完整运行时或一堆依赖。Mages 的前身是实验性的 YAMP,那个项目靠反射驱动、扩展极方便,从未以快为目标。
🔑 核心要点
- Mages 的定位是可嵌入 .NET 应用的轻量表达式解析与求值引擎,一行代码即可跑起来,无需配置。
- 能力范围远超数学表达式:支持变量、函数、闭包、对象、列表与复数,近年还加了少量 JSX。
- 设计目标是避免拖入完整脚本运行时、庞大的依赖树或授权谈判。
- 前身 YAMP 完全依靠反射实现,加新函数只需给方法打一个特性;它追求的是灵活而不是速度,却获得了远超预期的真实使用量。
💡 金句
把它想成「给你的 .NET 应用一个可嵌入的小型脚本语言」,而不必拖进一个完整运行时、一棵厚得像电话簿的依赖树,或一场授权谈判。
👍 0
👎 0
← 返回 dev.to 首页