Julia 语言在这其中扮演了这样一个角色:它是一门灵活的动态语言,适合用于科学计算和数值计算,并且性能可与传统的静态类型语言媲美。Julia 在设计之初就非常看重性能,再加上它的动态类型推导,使得 Julia 的计算性能超过了其它的动态语言,甚至能够与静态编译语言竞争。
Julia 与传统动态语言最重要的区别是:
- 核心语言很小:标准库是用 Julia 自身写的,包括整数运算这样的基础运算
- 丰富的基础类型:既可用于定义和描述对象,也可用于做可选的类型标注
- 通过多重派发,可以根据类型的不同,来调用同名函数的不同实现
- 为不同的参数类型,自动生成高效、专用的代码
- 接近 C 语言的性能
Julia 的目标是创建一个前所未有的集易用、强大、高效于一体的语言。除此之外,Julia 还拥有以下优势:
- 采用 MIT 许可证:免费又开源
- 用户自定义类型的速度与兼容性和内建类型一样好
- 无需特意编写向量化的代码:非向量化的代码就很快
- 为并行计算和分布式计算设计
- 轻量级的“绿色”线程:协程
- 低调又牛逼的类型系统
- 优雅、可扩展的类型转换和类型提升
- 对 Unicode 的有效支持,包括但不限于 UTF-8
- 直接调用 C 函数,无需封装或调用特别的 API
- 像 Shell 一样强大的管理其他进程的能力
- 像 Lisp 一样的宏和其他元编程工具
以上内容摘自Julia中文社区https://discourse.juliacn.com/
其实早前就听过这个语言,但是无奈真的没有时间深入了解学习,可以预见的是在未来10到20年内,这个语言将会以其自身的魅力和高性能计算绽放无尽光芒,毕竟没有人可以拒绝一个:
C语言一般快速而又拥有如同Ruby的动态性;
要具有Lisp般真正的同像性(Homoiconicity)而又有Matlab般熟悉的数学记号;
要像Python般通用、
像R般在统计分析上得心应手、
像Perl般自然地处理字符串、
像Matlab般具有强大的线性代数运算能力、像shell般胶水语言的能力,
还有,它应该是交互式的,同时又是编译型的……
的语言,简直就像是百宝箱。
虽然没有时间去深入学习这个语言,但是我还是希望自己能让更多人能接触了解这个特殊美丽的语言,希望有年轻人可以学习这门语言,为社会主义建设添砖加瓦。有空的时间我会找一些相关的资料。
Julia有两个版本,Julia和JuliaPro,Julia是基础语言,没有包。JuliaPro集成了一些安装包,这点类似于python和anconda的关系。不过不知道为什么,最近JuliaPro好像找不到了,页面也会跳转到JuliaHub,这点有时间了会发邮件跟官方确认一下。今天提供下上个月下载的JuliaPro_v1.5.4-1
包括了linux、mac、windows版本及安装文档,同时提供中文1.5,英文1.6版本的文档
链接:https://pan.baidu.com/s/1KgH2qAXxq5nosspD4HexCw
提取码:lvii
github项目地址:Julia Computing, Inc. (github.com)
就这吧,也不知道写啥了。甲方又催项目了。