如何以函数式方式对表示有符号整数的字符串进行加法和乘法运算?

问题描述 投票:0回答:0

我想在“DSL”(jsonnet)中对大(64 位)有符号整数进行“basic math”,仅支持“数字”(64 位双精度)。我的“策略”是将表示“整数”用户输入的字符串转换为可以正确表示为数字的字符串,并且在每个“操作”中只需检查哪些参数是“数字”和“字符串”。

理想情况下,我会支持加、减、乘、分、模和比较。但是我可以使用 div 构建模数,使用 add 构建子(假设 add 支持 signed 整数)。比较也应该很容易。

所以,至少,我需要 addmult,理想情况下是 div 实施示例。

那里有很多例子,但我发现的所有例子要么假设存在一个可以包含最大整数的整数类型,要么该语言是过程性的。不幸的是,jsonnet 也是 functional,因此也不能简单地使用过程解决方案。

所以,我正在寻找的是一个示例(或一个链接),它向我展示了如何使用 函数范式 来添加、乘以和理想地除以 signed 整数,表示为 strings,无需使用某些“内置”库函数来完成艰苦的工作(除非它在 jsonnet 中也可用)。或者,最有可能的是,该内置库函数的 OSS 实现。

我并不太关心性能,但我希望得到一个 O(m + n) 而不是 O(m * n) 的解决方案 ...

decimal jsonnet
© www.soinside.com 2019 - 2024. All rights reserved.