我的开源项目:表达式引擎 Mages
来源:dev.to — 2026-09-16
📋 概述
作者介绍自己维护的 .NET 表达式解析器 MAGES:给它一个字符串 `sin(2) * cos(pi / 4)`,它还你一个数值,同时支持变量、函数、闭包、对象、列表、复数,甚至一点 JSX。前身 YAMP 用反射实现、以灵活为先,意外成了 2013 年 Unity 网页游戏 SineRider 的数学引擎——一款用函数图像滑雪橇的游戏。文章讲述它从实验项目变成被正经产品采用的过程。
🔑 核心要点
- MAGES 是小型可嵌入脚本引擎,不必拖进庞大运行时或一场授权谈判。
- 前身 YAMP 走反射路线:加一个特性标注就能扩展函数,用速度换灵活。
- 它被 SineRider 用作数学引擎,说明实验性项目也可能有真实用户。
- 那个勉强的反缩略语命名,本身也是开源趣味的一部分。
💡 金句
知道 YAMP 那个基于反射、完全没为性能优化的解析器,正在浏览器游戏里安静地计算某个人的正弦波,这正是开源让人觉得有趣的地方。
👍 0
👎 0
← 返回 dev.to 首页