最好的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语言》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

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

Web应用漏洞侦测与防御

Web应用漏洞侦测与防御

Mike Shema / 齐宁、庞建民、张铮、单征 / 机械工业出版社 / 2014-8-20 / 69.00

本书由国际知名网络安全专家亲笔撰写,全面讲解如何预防常见的网络攻击,包括HTML注入及跨站脚本攻击、跨站请求伪造攻击、SQL注入攻击及数据存储操纵、攻破身份认证模式、利用设计缺陷、利用平台弱点、攻击浏览器和隐私等, 全书共8章:第1章介绍HTML5的新增特性及使用和滥用HTML5的安全考虑;第2章展示了如何只通过浏览器和最基本的HTML知识就可以利用Web中最常见的漏洞;第3章详细讲解CSR......一起来看看 《Web应用漏洞侦测与防御》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具