Julia: 由0.3 升级到0.4 版本的变化
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 版本的变化相关推荐
- 卸载vuecli3_卸载vue2.0并升级vue_cli3.0的实例讲解
今天来学习vue3.0,之前使用的是vue2.0现在用3.0的话你可以升级,也可以卸载再重装.我这里就是卸载重装啦. 第一步我们卸载全局的vue2.0 .你需要先通过 npm uninstall vu ...
- oppo手机彩蛋android 9.0,论升级Android9.0的速度,vivo完胜OPPO
原标题:论升级Android9.0的速度,vivo完胜OPPO 集微网消息(文/数码控),在OPPO.vivo这两大手机厂商之间,要说升级Android9.0操作系统的速度,从目前已知的消息看,是vi ...
- 惊艳!人人都能玩转酷炫的数据可视化,高德LOCA 2.0全新升级,轻松实现海量数据渲染...
引言 "一图胜千言",大数据时代来临,数据与人们生活密切相关.复杂难懂且体量庞大的数据给人的感觉总是冷冰冰的,让人难以获取到重点信息,也找不出规律和特征,数据价值发挥不出来.空间数 ...
- itools3.0服务器维护,iTools3.0微信管理功能更新 可支持语音信息
iTools3.0近日升级到了全新版本3.1.6.9,在这个全新版本里,微信管理功能有了突破性的更新,其加入了微信语音支持及微信名片.图片支持等功能,这使iTools3.0的微信管理功能在实用性上得到 ...
- windows 2003 下oracle从10.2.0.1升级到10.2.0.4
方法一: 1. 完全安装10.2.0.1 2. 安装完成后,停止所有的oracle服务,可以通过停止oracle 的window services或者使用以下命令来实现. emctl stop dbc ...
- 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 ...
- 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. ...
- AS升级3.0,gradle plugin 升级到3.0.0遇到的问题
1.Error:Could not get unknown property 'apkVariantData' for object of type com.android.build.gradle. ...
- 一句话生成数字人形象、昆仑芯2量产…百度大脑升级7.0,王海峰:技术更强了门槛却更低...
梦晨 鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 百度和央视又联手在直播现场上演黑科技了. 百度CTO王海峰只说了一句话,就给主持人整出了个数字"孪生兄弟". 更厉 ...
- android studio3.0升级,升级androidStudio3.0的问题
今天升级androidStudio3.0了,说一下目前遇到的坑 升级后要求用android26编译,会自动下载一堆东西使用的gradletool是3.0.0,gradle运行库版本是4.1,一开始以为 ...
最新文章
- 2014 年编程语言排名,人人都爱 TypeScript
- Java与嵌入式数据库SQLite的结合
- [转]实用至上!12个Vista服务可关闭
- 凝心聚力,共赢绿色计算新时代 ——2020绿色计算产业峰会在京召开
- GitHub上最受开发人员欢迎的5大Java项目
- 漫画:一位文科生的编程之路。
- Anaconda中使用图形化界面创建虚拟环境
- 李彦宏:Apollo Moon共享无人车必须要比打车便宜;消息称iPhone 12 mini已停产;抖音网页版上线|极客头条...
- 工具的使用——Photoshop
- php5apache2.dll,Apache2.2.8 + PHP5.2.5不能加载php5apache2.dll
- 灵格斯怎么屏幕取词_灵格斯屏幕取词翻译插件
- 通俗易懂的讲解贝叶斯原理(保证简单)
- C#数组和集合类详解
- 微软操作系统 Windows Server 2012 R2 官方原版镜像-转载
- 计算机tpm管理,管理 TPM 命令 (Windows 10) - Microsoft 365 Security | Microsoft Docs
- 论文-《Conversational Recommender System》
- 电脑端扫描二维码(java)
- Centos7安装Geany
- [安洵杯 2019]Attack (详细解析)
- EM算法-硬币实验的理解