Fortran Coder

查看: 427|回复: 5

[科学软件] 科学计算的新神器Julia

[复制链接]

47

帖子

12

主题

1

精华

专家

F 币
453 元
贡献
283 点
发表于 2019-1-28 22:38:58 | 显示全部楼层 |阅读模式
本帖最后由 weixing1531 于 2019-1-28 23:19 编辑

相比于Matlab的又贵又慢、Python的缩进与慢、Fortran的落后整个时代
科学计算的新神器Julia似乎是不错的选择,其特点如下:

  • 免费开源
  • 核心语言非常小。标准库用的是 Julia 语言本身写的
  • 调用许多其它成熟的高性能基础代码。如线性代数、随机数生成、快速傅里叶变换、字符串处理。(还在增加中……)
  • 丰富的用于建立或描述对象的类型语法
  • 高性能,接近于静态编译型语言。包括用户自定义类型等
  • 为并行计算和分布式计算而设计
  • 轻量级“绿色”协程
  • 优雅的可扩展的类型转换/提升
  • 支持Unicode, 包括但不限于UTF-8
  • 可直接调用 C 函数(不需要包装或是借助特殊的API)
  • 有类似shell的进程管理能力
  • 有类似Lisp的宏以及其它元编程工具


在 Julia 中,数组、字符串等的索引从 1 开始,而不是从 0 开始。这点跟Fortran一样!
我个人很不喜欢C家族语言,总觉得科学计算必须从 1 开始,从 0 开始的都是异类!

在数值计算领域,尽管有很多用 C 语言或 Fortran 写的高质量且成熟的库都可以用 Julia 重写,但为了便捷利用现有的 C 或 Fortran 代码,Julia 提供简洁且高效的调用方式。Julia 的哲学是 no boilerplateJulia 可以直接调用 C/Fortran 的函数,不需要任何"胶水"代码,代码生成或其它编译过程 – 即使在交互式会话 (REPL/Jupyter notebook) 中使用也一样. 在 Julia 中,上述特性可以仅仅通过调用 ccall 实现,它的语法看起来就像是普通的函数调用。

Julia 中文社区:https://cn.julialang.org/






回复

使用道具 举报

681

帖子

0

主题

0

精华

大师

F 币
621 元
贡献
347 点

规矩勋章元老勋章新人勋章水王勋章

QQ
发表于 2019-1-28 23:00:18 | 显示全部楼层
所以他到底是编译型语言还是解释型语言?

47

帖子

12

主题

1

精华

专家

F 币
453 元
贡献
283 点
 楼主| 发表于 2019-1-28 23:17:04 | 显示全部楼层
vvt 发表于 2019-1-28 23:00
所以他到底是编译型语言还是解释型语言?

Julia 程序被 LLVM 编译成高效的多平台机器码。
应该只比纯编译慢一点

482

帖子

4

主题

0

精华

大宗师

F 币
3238 元
贡献
1915 点

水王勋章元老勋章热心勋章

发表于 2019-1-29 09:02:04 | 显示全部楼层
Matlab的又贵又慢、Python的缩进与慢、Fortran的落后整个时代
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Matlab价钱不菲,简单优化后的代码速度与C、C++一个数量级,开发效率则要高得多;
Python的缩进可以4个空格,也有2个空格,青菜萝卜各有所好,怎么变成糟点?觉得python慢,可以cpython、ctypes、numba等等途径加速;
Fortran落后整个时代,夕阳无限好,只是近黄昏。
十年前就了解过开发中的Julia,能否创造历史,知我罪我,其惟春秋。

681

帖子

0

主题

0

精华

大师

F 币
621 元
贡献
347 点

规矩勋章元老勋章新人勋章水王勋章

QQ
发表于 2019-1-29 10:18:06 | 显示全部楼层
weixing1531 发表于 2019-1-28 23:17
Julia 程序被 LLVM 编译成高效的多平台机器码。
应该只比纯编译慢一点

你还是没有回答我的问题。
我的问题并不是,他的执行效率有多高?
而是,他到底是编译型语言?还是解释型语言?

1

帖子

0

主题

0

精华

新人

F 币
19 元
贡献
7 点
发表于 2019-2-8 21:32:10 | 显示全部楼层
上面的网址说是复杂的编译。。。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|群聊|Fcode

GMT+8, 2019-6-19 21:47

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表