JSRUN 用代码说话

Julia 简介

编辑教程

Julia 教程简介

Julia是一个新的高性能动态高级编程语言。语法和其他编程语言类似,易于其他语言用户学习。Julia 拥有丰富的函数库,提供了数字精度、精致的增幅器(sophisticated amplifier)和分布式并行运行方式。


核心函数库等大多数库是由 Julia 编写,但也用成熟的 C 和 FORTRAN 库来处理线性代数、随机数产生和字符串处理等问题。

Julia 是个灵活的动态语言,适合科学和数值计算,性能可与传统静态类型语言媲美。

Julia 与传统动态语言最大的区别是:

  • 核心语言很小;标准库是用 Julia 本身写的,如整数运算在内的基础运算
  • 完善的类型,方便构造对象和做类型声明
  • 基于参数类型进行函数重载
  • 参数类型不同,自动生成高效、专用的代码
  • 高性能,接近静态编译语言,如 C 语言

动态语言是有类型的:

每个对象,不管是基础的还是用户自定义的,都有类型。许多动态语言没有类型声明,意味着它不能告诉编译器值的类型,也就不能准确的判断出类型。

静态语言必须告诉编译器值的类型,类型仅存在于编译时,在运行时则不能更改。在 Julia 中,类型本身就是运行时对象,同时它也可以把信息传递给编译器。

重载函数由参数(参数列表)的类型来区别,调用函数时传入的参数类型,决定了选取哪个函数来进行调用。

对于数学领域的程序设计来说,这种方式比起传统面向对象程序设计中操作属于某个对象的方法的方式更显自然。

在 Julia 中运算符仅仅是函数的别名。程序员可以为新数据类型定义 “+” 的新方法,原先的代码就可以无缝地重载到新数据类型上。

因为运行时类型推断(得益于可选的类型声明),以及从开始就看重性能,Julia 的计算性能超越了其他动态语言,甚至可与静态编译语言媲美。

在大数据处理的问题上,性能一直是决定性的因素:在刚刚过去的十年中,数据量还在以摩尔定律增长着。

Julia 想要变成一个前所未有的集易用、强大、高效于一体的语言。除此之外,Julia 的优势还在于:

  • 免费开源(MIT 协议 )
  • 自定义类型与内置类型同样高效、紧凑
  • 不需要把代码向量化;非向量化的代码跑得也很快
  • 为并行和分布式计算而设计
  • 轻量级“绿色”线程(协程 )
  • 低调又牛逼的类型系统
  • 优雅、可扩展的类型转换
  • 高效支持 Unicode, 包括且不只 UTF-8
  • 直接调用 C 函数(不需封装或 API)
  • 像 Shell 一样强大的管理其他进程的能力
  • 像 Lisp 一样的宏和其他元编程工具
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
如遇到支付问题请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟
谢谢支持,我一定会更加努力的