Julia 的0.4 版本(release)马上就要出来,但从0.4 candidate 版本可以看到,和先前版本相比,0.4+版本在一些地方明显的不同和变化。

最大的惊喜是,using库的速度比原先有非常大的进步,提升了一些客户体验。赞一下。

当然,升级也会带来一些不适,代价是需要对原先的代码进行一些调整。今天主要讲讲其中的调整。

1、库的变化

Color => Colors

Dates=>Base.Dates  # Dates库内置成Base.

在这里,Date(2015,1,1) 和DateTime(2015,1,1,9,30) 可以直接使用,但是,year(), month(),day(), 必须是Dates.year(),Dates.month(),Dates.day().

或者先加上 using Base.Dates, 这样就可以直接使用year()等.

2、一些用法的变化

(1) 比如push!功能的变化。

(a)对于Dict(), 更多改为 由push! => setindex!

但更为重要的是: push!(data, key, value ) => setindex!(data,value,key). 因为这个变化,所以不能单纯用替换来进行升级。

需要说明的是,这个变化往往需要时间来适应。

(b) 对于Array ,建议由push! 进行操作,而不是setindex!().

比如,对于data =Float64[] # 或Array{Float64,1}()

setindex!(data,0.1) # 将会报错!

push!(data,0.1)       # 正常

(2) 空格处理

原来比如 函数名后 有二个空格,再() 函数,即 fun  (data::Array{Float64,1}), 在fun签名后有空格的,在0.4版本认为不妥。

(3)函数的变化:ifloor(), int() 等

ifloor(x)               => floor(integer,x)

int(x)                    => round(Int,x)

parseint(Int64,x) => parse(Int64,x)

String                  => AbstractString

Base.Uint8         => Base.UInt8  等

(4) 语法的变化

(a) Dict

比如,Dict的写法进行了进一步的规范:

["a"=>0.1, "b"=>0.2]  =>Dict("a"=>0.1,"b"=>0.2) # 已经要求要加Dict .

(b) [1:4] 已经改成 collect(1:4).

(5)  Sys =>Base . 这个会影响到路径的设置,特别提醒!

push!(Sys.DL_LOAD_PATH, "/opt/local/lib")    => :Base.DL_LOAD_PATH

3、其它

另外,还有一些是IDE平台LT和一些库未和跟随0.4升级的报错或warning.

不过,若是由于其它的库没有升级(比如函数、语法过期等),可以下Compat.jl库,using Compat; 后可以把WARNING不显示。

后面再一一总结吧。当然,如果有自动升级处理的方式或机制,会更好,毕竟,升级还是有一定工作量的。

Julia: 由0.3 升级到0.4 版本的变化相关推荐

  1. 卸载vuecli3_卸载vue2.0并升级vue_cli3.0的实例讲解

    今天来学习vue3.0,之前使用的是vue2.0现在用3.0的话你可以升级,也可以卸载再重装.我这里就是卸载重装啦. 第一步我们卸载全局的vue2.0 .你需要先通过 npm uninstall vu ...

  2. oppo手机彩蛋android 9.0,论升级Android9.0的速度,vivo完胜OPPO

    原标题:论升级Android9.0的速度,vivo完胜OPPO 集微网消息(文/数码控),在OPPO.vivo这两大手机厂商之间,要说升级Android9.0操作系统的速度,从目前已知的消息看,是vi ...

  3. 惊艳!人人都能玩转酷炫的数据可视化,高德LOCA 2.0全新升级,轻松实现海量数据渲染...

    引言 "一图胜千言",大数据时代来临,数据与人们生活密切相关.复杂难懂且体量庞大的数据给人的感觉总是冷冰冰的,让人难以获取到重点信息,也找不出规律和特征,数据价值发挥不出来.空间数 ...

  4. itools3.0服务器维护,iTools3.0微信管理功能更新 可支持语音信息

    iTools3.0近日升级到了全新版本3.1.6.9,在这个全新版本里,微信管理功能有了突破性的更新,其加入了微信语音支持及微信名片.图片支持等功能,这使iTools3.0的微信管理功能在实用性上得到 ...

  5. windows 2003 下oracle从10.2.0.1升级到10.2.0.4

    方法一: 1. 完全安装10.2.0.1 2. 安装完成后,停止所有的oracle服务,可以通过停止oracle 的window services或者使用以下命令来实现. emctl stop dbc ...

  6. Oracle 10g(10.2.0.4)升级到10.2.0.5.19

    一.将数据库版本从10.2.0.4 升级到 10.2.0.5,再升级到10.2.0.5.19 (1) 备份等过程略过,一个老库的升级过程,记录之.   (2) 一致性关闭数据库及监听 sqlplus ...

  7. Oracle 11.2.0.1 升级到 11.2.0.3 示例

    Oracle 11.2.0.1 单实例升级到11.2.0.3. Oracle 升级的步骤都差不多. 先升级Oracle software,然后升级Oracle instance. Oracle 11. ...

  8. AS升级3.0,gradle plugin 升级到3.0.0遇到的问题

    1.Error:Could not get unknown property 'apkVariantData' for object of type com.android.build.gradle. ...

  9. 一句话生成数字人形象、昆仑芯2量产…百度大脑升级7.0,王海峰:技术更强了门槛却更低...

    梦晨 鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 百度和央视又联手在直播现场上演黑科技了. 百度CTO王海峰只说了一句话,就给主持人整出了个数字"孪生兄弟". 更厉 ...

  10. android studio3.0升级,升级androidStudio3.0的问题

    今天升级androidStudio3.0了,说一下目前遇到的坑 升级后要求用android26编译,会自动下载一堆东西使用的gradletool是3.0.0,gradle运行库版本是4.1,一开始以为 ...

最新文章

  1. 2014 年编程语言排名,人人都爱 TypeScript
  2. Java与嵌入式数据库SQLite的结合
  3. [转]实用至上!12个Vista服务可关闭
  4. 凝心聚力,共赢绿色计算新时代 ——2020绿色计算产业峰会在京召开
  5. GitHub上最受开发人员欢迎的5大Java项目
  6. 漫画:一位文科生的编程之路。
  7. Anaconda中使用图形化界面创建虚拟环境
  8. 李彦宏:Apollo Moon共享无人车必须要比打车便宜;消息称iPhone 12 mini已停产;抖音网页版上线|极客头条...
  9. 工具的使用——Photoshop
  10. php5apache2.dll,Apache2.2.8 + PHP5.2.5不能加载php5apache2.dll
  11. 灵格斯怎么屏幕取词_灵格斯屏幕取词翻译插件
  12. 通俗易懂的讲解贝叶斯原理(保证简单)
  13. C#数组和集合类详解
  14. 微软操作系统 Windows Server 2012 R2 官方原版镜像-转载
  15. 计算机tpm管理,管理 TPM 命令 (Windows 10) - Microsoft 365 Security | Microsoft Docs
  16. 论文-《Conversational Recommender System》
  17. 电脑端扫描二维码(java)
  18. Centos7安装Geany
  19. [安洵杯 2019]Attack (详细解析)
  20. EM算法-硬币实验的理解

热门文章

  1. 關於GoogleUpdate.exe
  2. SQL学习笔记之游标
  3. 《计算机网络 自顶向下方法》 第1章 计算机网络和因特网
  4. GUI学习之〇——PyQt5安装
  5. 关于Itext 报错-java.lang.NoClassDefFoundError: org/bouncycastle/asn1/ASN1Encodable
  6. hallo world
  7. 华为OpenStack开源团队人才招募中
  8. javascript事件处理
  9. iOS已发布应用中对异常信息捕获和处理(转)
  10. 再不用担心Sci-Hub不能用了