最近的测试结果--各种编程语言对任意精度任意长度数值的支持情况

8 views
Skip to first unread message

Luo Yong

unread,
Oct 13, 2022, 3:49:00 AM10/13/22
to tj...@googlegroups.com

各种编程语言对任意精度任意长度数值的支持情况:


完美支持: PythonRubyScalaCommon Lisp

有但是不好用: CJavaRust

一言难尽: Javascript(动辄Infinity)Emacs Lisp(动辄overflow)、各种Shell


综合最强: Scala


Song Wei

unread,
Oct 17, 2022, 6:47:44 AM10/17/22
to tj...@googlegroups.com

我倒是更看重程序语言对常用的机器类型(u8~u64,i8~i64, float8~64)的支持状况(从语法到后端优化)。有一段历史时期设计出来的语言要么过度简单(Lua),要么盲目乐观(Common Lisp,Python)。

然后我发现我不容易找出一个需要用大数和任意精度浮点数的场景,这种特殊的需求往往需要特殊的设计,语言默认的支持还不一定符合业务要求和性能指标。

--
这是一封来自TJLUG (Tianjin Linux User Group) 的邮件。
您收到此信息是由于您订阅了 Google 论坛“TJLUG”论坛。
要在此论坛发帖,请发送或回复电子邮件到 tj...@googlegroups.com
IRC/Telegram群组,活动记录等详情见信息页: https://github.com/TJLUG/TJLUG-BBS
---
您收到此邮件是因为您订阅了Google网上论坛上的“TJLUG”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到tjlug+un...@googlegroups.com
要在网络上查看此讨论,请访问https://groups.google.com/d/msgid/tjlug/BYAPR06MB477607400258DB0DD637979BA1259%40BYAPR06MB4776.namprd06.prod.outlook.com

Luo Yong

unread,
Oct 20, 2022, 4:25:48 AM10/20/22
to tj...@googlegroups.com
这样的场合现在太有了,比如facebook最近玩命推的那个snow flake id,用来代替UUID的,还有那个什么椭圆加密算法,太多了,JavaScript用json-bigint和bignumber.js能解决显示问题,但是运算问题还是难办

目前内部能完美支持这种数值的还是scala和python,以及ruby和common lisp,别的除了不好用,就是干脆不支持

发件人: tj...@googlegroups.com <tj...@googlegroups.com> 代表 Song Wei <leo_s...@outlook.com>
发送时间: Monday, October 17, 2022 6:47:33 PM
收件人: tj...@googlegroups.com <tj...@googlegroups.com>
主题: Re: [TJLUG #4949] 最近的测试结果--各种编程语言对任意精度任意长度数值的支持情况
 

Song Wei

unread,
Oct 21, 2022, 6:58:53 PM10/21/22
to tj...@googlegroups.com

你举例的都属于用得少的场合,属于特事特办的范畴。然后Common Lisp那个大数有bug,不知道修没有。

Reply all
Reply to author
Forward
0 new messages