Julia (编程语言)

✍ dations ◷ 2025-11-22 09:17:00 #Julia (编程语言)

Julia是一种高级通用动态编程语言,它最初是为了满足高性能数值分析和计算科学的需要而设计的,不需要编译器,速度快,也可用于客户端和服务器的Web用途、低级系统编程或用作规约语言。

Julia设计的独特之处包括,参数多态的类型系统,完全动态语言中的类型,以及它多分派的核心编程范型。它允许并发、并行和分布式计算,并直接调用C和Fortran库而不使用粘合代码。

Julia拥有垃圾回收机制,使用及早求值,包含了用于浮点计算、线性代数、随机数生成和正则表达式匹配的高效库。有许多库可以使用,其中一些(如用于快速傅里叶变换的库)已经预先捆绑在Julia里。

一群拥有各种语言丰富编程经验的Matlab高级用户,对现有的科学计算编程工具感到不满——这些软件对自己专长的领域表现得非常棒,但在其它领域却非常糟糕。他们想要的是一个开源的软件,它要像C语言一般快速而又拥有如同Ruby的动态性;要具有Lisp般真正的同像性而又有Matlab般熟悉的数学记号;要像Python般通用、像R般在统计分析上得心应手、像Perl般自然地处理字符串、像Matlab般具有强大的线性代数运算能力、像shell般胶水语言的能力,易于学习而又不让真正的黑客感到无聊;还有,它应该是交互式的,同时又是编译型的。

该项目大约于2009年中开始。

主要用于数值计算。


function mandel(z)    c = z    max = 80    for n = 1:max        if abs(z) > 2            return n-1        end        z = z^2 + c    end    return maxend

随机矩阵统计

function randmatstat(t)    n = 5    v = zeros(t)    w = zeros(t)    for i = 1:t        a = randn(n,n)        b = randn(n,n)        c = randn(n,n)        d = randn(n,n)        P =         Q =         v = trace((P.'*P)^4)        w = trace((Q.'*Q)^4)    end    std(v)/mean(v), std(w)/mean(w)end

参见

  • Matlab
  • GNU Octave
  • R语言
  • Mathematica
  • Sagemath

参考资料

  1. ^ LICENSE.md. GitHub. 
  2. ^ Contributors to JuliaLang/julia. GitHub. 
  3. ^ 3.0 3.1 3.2 3.3 3.4 3.5 3.6 Why We Created Julia. Julia website. February 2012 . 
  4. ^ v1.4.0. Github.com. 2020-03-21 . 
  5. ^ v1.4.0-rc2. Github.com. 2020-02-24 . 
  6. ^ Julia. Julia. NumFocus project. . Julia's Base library, largely written in Julia itself, also integrates mature, best-of-breed open source C and Fortran libraries for ... 
  7. ^ Fischer, Keno. Running julia on wasm. 2019-07-22 . 
  8. ^ Download Julia - Currently supported platforms. Julia. . 
  9. ^ The Julia Language: A fresh approach to technical computing. Termux/Android. Github. . 
  10. ^ 10.0 10.1 10.2 10.3 Home · The Julia Language. docs.julialang.org. (英语). 
  11. ^ Programming Language Network. GitHub. . 
  12. ^ JuliaCon 2016. JuliaCon. . He has co-designed the programming language Scheme, which has greatly influenced the design of Julia 
  13. ^ The Julia Language (official website). General Purpose Julia lets you write UIs, statically compile your code, or even deploy it on a webserver. 
  14. ^ Bryant, Avi. Matlab, R, and Julia: Languages for data analysis. O'Reilly Strata. 15 October 2012 . (原始内容存档于2013-05-24). 
  15. ^ Singh, Vicky. Julia Programming Language – A True Python Alternative. Technotification. 23 August 2015. 
  16. ^ Krill, Paul. New Julia language seeks to be the C for scientists. InfoWorld. 18 April 2012. 
  17. ^ Finley, Klint. Out in the Open: Man Creates One Programming Language to Rule Them All. Wired. 3 February 2014. 
  18. ^ Escher : With Escher you can build beautiful Web Uls entirely in Julia. Shasi.github.io. . (原始内容存档于2016-03-04). 
  19. ^ Getting Started with Node Julia · Node Julia. Node-julia.readme.io. . 
  20. ^ Moss, Robert. Using Julia as a Specification Language for the Next-Generation Airborne Collision Avoidance System. 26 June 2015 . (原始内容存档于1 July 2015). Airborne collision avoidance system 
  21. ^ Suspending Garbage Collection for Performance...good idea or bad idea?. Groups.google.com. . 
  22. ^ (now available with using FFTW in current versions; that dependency is one of many moved out of the standard library to a package because it is GPL licensed, and thus is not included in Julia 1.0 by default.) Remove the FFTW bindings from Base by ararslan · Pull Request #21956 · JuliaLang/julia. GitHub. (英语). 
  23. ^ Why We Created Julia 互联网档案馆的存档,存档日期2012-04-23.

外部链接

  • 官方网站(英文)
  • 源代码(英文)
  • 中文社区(简体中文)
  • 中文文档(简体中文)

相关

  • 古法语古法语的概念包括奥依语系的罗曼语族的集合。通行于约10到14世纪,现今法国北部的半数地区。 现在的法语只有几十个字来自高卢语,如果添加高卢词源,则大约有200个。例如chêne和
  • 生物物理化学生物物理化学是物理学的分支,它使用物理学和物理化学的概念来研究生物系统。这门学科的研究最普遍的特征是试图根据构成系统的分子或这些系统的超分子结构来解释生物系统中的
  • 桥梁桥或桥梁是跨越峡谷、山谷、道路、铁路、河流、其他水域、或其他障碍而建造的结构,是一种由水面或地面突出来的高架,用来连着桥头桥尾两边路。桥的目的是允许人、车辆、火车或
  • 低聚物低聚物,又称寡聚物、寡合物、齐聚物、低聚体或寡体,指的是由较少的重复单元所组成的聚合物,其相对分子质量介于小分子和高分子之间。其英语为“oligomer”词头oligo来自于希腊
  • 密西拿《米书拿》(希伯来语:.mw-parser-output .script-hebrew,.mw-parser-output .script-Hebr{font-size:1.15em;font-family:"Ezra SIL","Ezra SIL SR","Keter Aram Tsova","Taam
  • 蒂宾根大学210百万欧元(不含医疗开支)蒂宾根大学 (Eberhard Karls Universität in Tübingen),,又译图宾根大学、杜宾根大学,位于德国蒂宾根,是德国最古老的大学之一,在自然科学和人文科学领域
  • 绝热过程绝热过程(英语:adiabatic process)是一个绝热体系的变化过程,绝热体系为和外界没有热量和粒子交换,但有其他形式的能量交换的体系,属于封闭体系的一种。绝热过程有绝热压缩和绝热
  • 冲绳岛冲绳岛(日语:沖縄島/おきなわじま Okinawajima */?;琉球语:沖縄/ウチナー Ucinaa * / ?)或冲绳本岛,也称为地下(冲绳语:ジジ/ジチ)或大地(冲绳语:ウフジ/ウフジー)。位于琉球群岛冲绳
  • 荒漠面积列表这是一个按面积排序的世界荒漠列表。其中包含了所有面积大于50,000平方千米(19,300平方英里)的荒漠
  • 红盒子红盒子(英语:Red Box)是位于美国加利福尼亚州洛杉矶县的一个非建制地区。该地的面积和人口皆未知。红盒子的座标为34°16′39″N 118°06′10″W / 34.27750°N 118.10278°W /