Ruby Ruby 的发展思路有问题

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

程序的作用就是用来处理数据,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 #0 回复

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,痴人说梦,想想差异化发展才有可能生存。

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