Ruby Ruby 的发展思路有问题

xiaojiba · 2023年03月24日 · 最后由 xesam 回复于 2023年08月31日 · 1246 次阅读

程序的作用就是用来处理数据,building, analysis, test 本质上都一样,都是在处理数据,只是最终的目的不同而已

Python 厉害就在于,很多时候 Python 本身不处理数据,而是将数据传递给后面的 PyPi Package 处理,PyPi Package 处理完后通过 Python 再交给终端用户 这样一来,复杂的处理层交给了 PyPi Package 实现,PyPi Package 可以通过各种各样的语言实现,比如 Scala, C++ 等 Python 实现应用层,对使用者友好,使用者如果要使用比如说,Pandas, PyTorch, PyFlink, 这些工具实现起来都不同,但是要去用的话,Scala, C++, C 都要去学就太累了,通通做成 PyPi Package 包,通过 Python 来用,这样用户就需学习 Python 就够了

Python 让很多人认识到,原来编程语言不止可以用来开发,还可以当作 Excel 那样去用,Ruby 除了 RoR 这种用来开发后端的 package, 远远不够,而且很多包最终用起来语法都不一样,这就很难弄

Ruby 又搞什么 3 x 3, 追求速度没有意义,脚本语言应该专注在可用性上

Python 简洁的语法,以及 C 包装了一层,逻辑非常简单。多编程范式,主要是函数式的表达接近数学表达。早期被数据科学家当做穷人的 Matlab。现在变成了标配。

有了巨大的科学家用户群,才有各种处理数据的计算模块,其实这是生态的问题。

Ruby 的语法比较花,如果用来描述数学,就比较缺乏一致性。 Ruby 的花式语法,就是他的设计特性,主张模拟自然语言,文学性编程。虽然多样,但是都是模仿自然语言。

Ruby 能诞生 ROR 的原因是,ROR 的作者把元编程(Ruby 击中优化的特性)玩的非常 6,主张根据约定自动生成代码。这才有了非常特别的 Rails。 提高 Ruby 的性能也没什么毛病,因为动态非常慢,提高性能,可以帮助任何元编程的程序提高速度。

语言工具本身是中立的。设计的时候带有设计者想表达的特性和目标。 最终语言发展取决于生态,也就是用户大量的贡献,以及出现杀手级应用。

Mark24 回复

researcher 选择了 Python, 这也是一点 这些只是我自己的观点

一旦生态形成,后来者就很难打破。因为意味着以后迁移就需要学习和新的使用习惯。

那都不是事,实际上,重点是 Windows 不友好😂

Python 让很多人认识到,可以有 jupiter notebook

对了,Pyhton 的某些科学计算库,符号运算能力也很强,可以当作 Matlab 用

Ruby gem 也可以用其它语言写功能。Ruby 在这里的问题在于他们选择了 Python。当年可供选择的语言并不多,Ruby 那时 (至少在欧美) 并不出名。

这些 external 库应该是社区开发的吧,Ruby 维护者应该不会开发这些库,专注性能也没错(低碳环保)

根据本帖讨论的内容搜到一个帖子:http://129.226.226.195/post/24983.html 为什么将 Python 用于高性能/科学计算(而不是 Ruby)?

不过读着像是机翻。

有啥问题,方向不一样,各自都有自己的领域

想在 Python 的领域打败 Python,痴人说梦,想想差异化发展才有可能生存。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号