为什么Julia 1.0没有写STDOUT但Julia 0.6有效

Ste*_*iew 2 julia

function main()
    (k, a, b, a1, b1) = (BigInt(2), BigInt(4), BigInt(1), BigInt(12), BigInt(4))
    while true
        (p, q, k) = (k*k, BigInt(2)*k+BigInt(1), k+BigInt(1))
        (a, b, a1, b1) = (a1, b1, p*a+q*a1, p*b+q*b1)
        (d,d1) = ( div(a,b),div(a1,b1) )
        while d == d1
            write(STDOUT,string(d))
            (a,a1) = ( BigInt(10) * (a % b), BigInt(10) * (a1 % b1) )
            (d,d1) = ( div(a,b),div(a1,b1) )
        end
    end
end

main()
Run Code Online (Sandbox Code Playgroud)

当我编译它时,它给我错误消息

$ julia pi_2.jl 
ERROR: LoadError: UndefVarError: STDOUT not defined
Run Code Online (Sandbox Code Playgroud)

它在julia 0.6中完美运行并生成了Pi的所有数字

$ julia06 pi_2.jl 
3141592653589793238462643383279502884197169399375105820974944592307816...
Run Code Online (Sandbox Code Playgroud)

Bog*_*ski 9

STDOUTstdout在Julia 1.0中重命名为.

如果您从Julia 0.6移植,我建议您使用Julia 0.7而不是Julia 1.0.

朱莉娅0.7和朱莉娅1.0具有相同的功能,但朱莉娅0.7大部分时间都会打印警告,其中朱莉娅1.0错误的地方,当朱莉娅0.6有一个突破性的变化.