Julia 中文文档不会舍弃动态的特性。幸运的是,现代编 程语言设计与编译器技术可以大大消除性能折衷(trade-off),并提供有足够生产力的单一环境进行 原型设计,而且能高效地部署性能密集型应用程序。Julia 语言在这其中扮演了这样一个角色:它是 一门灵活的动态语言,适合用于科学计算和数值计算,并且性能可与传统的静态类型语言媲美。 由于 Julia 的编译器和其它语言比如 Python 或 R 的解释器有所不同,一开始你可能发现 无论它是基础的类型(primitive)还是用户自定义的类型。大多数的动态语言都缺乏类型声明,这意 味着程序员无法告诉编译器值的类型,也就无法显式地讨论类型。另一方面,在静态语言中,往往 必须标注对象的类型。但类型只在编译期才存在,而无法在运行时进行操作和表达。而在 Julia 中, 类型本身是运行时的对象,并可用于向编译器传达信息。 类型系统和多重派发是 Julia 语言最主要的特征,但一般不需要显式地手动标注或使用:函数通过函 --cpu-target设置 来限制使用 CPU 的某些特性;设置为 help 可以查看可用的 选项 -O, --optimize={0,1,2,3} 设置编译器优化级别 (若未配置此选项,则默认等级为 2;若配置了此选项 却没指定具体级别,则默认级别为 3)。 -g, -g 开启或设置 debug 信息的生成等级。若未配置此选项,则默认 debug 0 码力 | 1238 页 | 4.59 MB | 1 年前3
Julia v1.2.0 DocumentationFor example: x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, false (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sor�ng algorithm0 码力 | 1250 页 | 4.29 MB | 1 年前3
Julia v1.1.1 DocumentationFor example: x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, false (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sor�ng algorithm0 码力 | 1216 页 | 4.21 MB | 1 年前3
Julia 1.1.0 DocumentationFor example: x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, false (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sor�ng algorithm0 码力 | 1214 页 | 4.21 MB | 1 年前3
Julia 1.2.0 DEV DocumentationFor example: x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, false (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sor�ng algorithm0 码力 | 1252 页 | 4.28 MB | 1 年前3
Julia v1.4.2 DocumentationRELATED FUNCTIONS x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sorting algorithm0 码力 | 1314 页 | 4.29 MB | 1 年前3
Julia v1.3.1 DocumentationFor example: x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, false (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sor�ng algorithm0 码力 | 1276 页 | 4.36 MB | 1 年前3
Julia v1.5.4 DocumentationRELATED FUNCTIONS x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sorting algorithm0 码力 | 1337 页 | 4.41 MB | 1 年前3
Julia v1.6.6 DocumentationFor example: x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sorting algorithm0 码力 | 1324 页 | 4.54 MB | 1 年前3
Julia 1.6.5 DocumentationFor example: x = rand(1:500, 100) k = 50 k2 = 50:100 s = sort(x; alg=QuickSort) ps = sort(x; alg=PartialQuickSort(k)) qs = sort(x; alg=PartialQuickSort(k2)) map(issorted, (s, ps, qs)) # => (true, (s, ps, qs)) # => (true, true, false) map(x->issorted(x[k2]), (s, ps, qs)) # => (true, false, true) s[1:k] == ps[1:k] # => true s[k2] == qs[k2] # => true MergeSort is an O(n log n) stable sorting algorithm0 码力 | 1325 页 | 4.54 MB | 1 年前3
共 38 条
- 1
- 2
- 3
- 4













