SoulverCore 3.1.0 版本发布:数学计算引擎的全面升级
SoulverCore 是一个强大的数学计算引擎框架,它能够解析和计算自然语言形式的数学表达式。与传统的计算器不同,SoulverCore 允许用户使用更自然的方式输入数学问题,比如"3小时15分钟加上45分钟等于多少"这样的表达方式。最新发布的 3.1.0 版本带来了多项重要更新,包括非十进制基数计算、时间区域转换增强、Unix 时间戳支持等新功能,以及全新的 API 接口。
非十进制基数计算功能
3.1.0 版本最引人注目的新特性之一是全面支持非十进制基数的计算。现在开发者可以在应用中实现:
- 使用十六进制、二进制或八进制数进行单位换算,例如"0xF days in μs"(将十六进制的F天转换为微秒)
- 支持通过"as base x"语法在不同进制间转换,如"0b101101 as base 16"(将二进制101101转换为十六进制2D)
- 新增对hex()、bin()和oct()函数的支持,与Python中的语法保持一致
- 添加"as oct"作为"as octal"的简写形式
这些功能特别适合需要在不同数字系统间转换的开发者,比如网络编程或底层系统开发场景。
数值舍入功能增强
新版本引入了更灵活的数值舍入方法:
- "round 310 up to nearest hundred"(将310向上舍入到最近的百位数,结果为400)
- "round 390 down to nearest hundred"(将390向下舍入到最近的百位数,结果为300)
这些表达式式的舍入方法比传统的四舍五入更加灵活,特别适合财务计算、库存管理等需要特定舍入规则的业务场景。
时区计算功能改进
时间计算是SoulverCore的重要功能之一,3.1.0版本在这方面做了多项改进:
- 支持使用"time"作为注释词,如"3pm Sydney time to London time"
- 在某些情况下支持隐式解释"from here",如"3pm to Chicago"会自动假设是从当前时区转换到芝加哥时间
- 新增"time now"和"date today"短语支持
- 添加了"Tampa, Florida"作为内置时区城市
这些改进使得时区转换更加自然和直观,特别适合开发需要处理多时区的全球化应用。
Unix时间戳支持增强
对于使用时间戳的开发者,新版本提供了更好的支持:
- 支持毫秒级时间戳,如"1733823083000 ms to date"
- 表达式"1733823083000 to date"现在会被解释为毫秒级时间戳(而非秒级),这更符合实际使用场景
单位系统更新
新版本添加了桶(barrels, bbl)作为新的容量单位,定义为158.987升。这使得SoulverCore能够更好地支持石油、化工等行业的特定计算需求。
API重大更新
3.1.0版本引入了两个重要的新API,极大地扩展了框架的应用场景:
LineCollectionEditingHelper
这是一个革命性的API,专门为构建类似Soulver的"文本视图+答案栏"计算界面而设计。它作为控制器层,连接视图(通常是UITextView或NSTextView)和LineCollection模型对象。开发者只需在用户编辑文本视图时通知LineCollectionEditingHelper实例,它就会自动处理LineCollection中需要添加/删除/更新的行。
随版本发布的示例Mac应用展示了如何使用这个API,仅用不到150行Swift代码就实现了带有语法高亮的计算文本视图和答案表格。这对于想要开发高级计算应用的开发者来说是一个巨大的生产力提升。
TokenListSemantics
这个新API为数学表达式提供了语义分析层,能够标记表达式中各部分的语义类型(数字、单位、时区等)。开发者可以通过TokenList对象的metadata.semantics获取语义对象,然后枚举表达式中的语义标记(包含范围信息)。
与直接使用TokenList相比,TokenListSemantics专门为语法高亮优化,其语义标记类型在不同版本间保持相对稳定。这使得实现表达式语法高亮变得更加简单可靠。
其他API改进
- 新增FormattingPreferences.unformatted静态属性,用于获取最简格式的结果(无千位分隔符、四舍五入,使用货币代码而非符号)
- 转换系统全面重构,虽然可能导致极少数现有代码需要调整,但带来了更大的灵活性和功能扩展空间
总结
SoulverCore 3.1.0通过引入非十进制计算、增强的时间处理和全新的API,显著提升了框架的能力和易用性。特别是LineCollectionEditingHelper和TokenListSemantics这两个新API,为开发者构建高级计算应用提供了强大工具。无论是需要处理复杂数学表达式的专业应用,还是想要添加智能计算功能的普通应用,都能从这个版本中受益。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0150- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0111