最好的Julia语言

栏目: Scala · 发布时间: 7年前

内容简介:终于发现了最适合我的编程语言做大数据/机器学习方面的工作多年. 最为熟悉 C++, Matlab/R/Python/Java/Scala 都用过.但每种语言的体验总觉得有缺憾.一个理念: 如果不是语言专家, 那么编程语言, 仅是实现想法的工具. 更为重要的事情如何快速准确地实现功能和想法, 而不是消耗在工具本身.

终于发现了最适合我的编程语言 Julia

做大数据/机器学习方面的工作多年. 最为熟悉 C++, Matlab/R/Python/Java/Scala 都用过.但每种语言的体验总觉得有缺憾.

一个理念: 如果不是语言专家, 那么编程语言, 仅是实现想法的工具. 更为重要的事情如何快速准确地实现功能和想法, 而不是消耗在 工具 本身.

1. C++

与 C 语言一样, 计算性能是公认的, 没有多少语言比它们更快了. 但正由于其离机器原理更近, 细微的计算资源控制(尤其是内存管理,指针等)等原因, 使得其开发和维护成本很高. 要快速实现想法C++ 肯定不是最好的选择.

2. Matlab/R

读博期间, 很多人都会选择 Matlab 做实验, 因为功能强大, 有你所想, 而 R 语言则是开源的解决方案.  但其收费和臃肿的环境, 总是让人心里有疙瘩. 而且性能真的不行.  对于那些基于很多或很大数据做训练学习的算法, 简直无法忍受

3. Python

python 的简洁和强大的第三方功能支持, 使得实现起来, 高效很多. 确实是验证想法的好环境. 但在用其实现一个分布式系统, 并部署生产的过程中发现, 其在很多地方都会有不明所以的坑. 而且其全局锁让追求高并发的系统很无奈, 尤其是计算密集的系统.

还有一个极度不认可的就是, 那个一定要对齐的格式要求.

4.  Scala

Scala 的使用是经常需要开发分布式的大数据算法, 而 Spark 经常是首选, 在 Spark 的接口中, Scala 更为全面, 而且逻辑与 spark 的设计实现更为贴近, 所以倾向于 SCala.

但 Scala 的语法简直是外星语, 纷繁芜杂的符合和设计方式, 简直让人头大.

这是个万花筒, 但对于需要标准化和可维护性的工业生产环境, 选择 Scala 也许是个错误的选择.

总结:

最近, 在了解 Lua 的过程中, 竟然发现了一种专门为"并行"数值计算设计的语言, Julia

在了解和试用之后, 发现这才是适合我的最好的语言.

1. 可调用 C/Python 库, 聪明的做法, 可以更好的继承现有的成果

2. 类似 matlab 和 python 的语法, 更换语言的学习成本低, 而且实现起来天生就像python那样高效

3. 接近于 C++ 的性能, 在很多情况下已经足够了

4.  开源的做法, 使得语言具有强大的 Package后备力量, 在生态上已经初具规模

5. 天生的并发和分布式支持, 省很多事情了


以上所述就是小编给大家介绍的《最好的Julia语言》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Data Structures and Algorithm Analysis in Java

Data Structures and Algorithm Analysis in Java

Mark A. Weiss / Pearson / 2011-11-18 / GBP 129.99

Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course wa......一起来看看 《Data Structures and Algorithm Analysis in Java》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具