Tag: julia lang

如何在编辑后在活动的Julia会话中重新加载模块?

我有一个文件“/SomeAbsolutePath/ctbTestModule.jl”,其内容是: module ctbTestModule export f1 f1(x) = x + 1 end 我在运行“〜/ .juliarc.jl”的terminal上启动了Julia。 启动代码包含以下行: push!(LOAD_PATH, "/SomeAbsolutePath/") 因此,我可以立即键入到朱莉娅控制台: using ctbTestModule 加载我的模块。 正如所料, f1(1)返回2 。 现在我突然决定要编辑f1 。 我在编辑器中打开“/SomeAbsolutePath/ctbTestModule.jl”,并将内容更改为: module ctbTestModule export f1 f1(x) = x + 2 end 我现在尝试在我活跃的Julia会话中重新加载模块。 我试试 using ctbTestModule 但f1(1)仍然返回2 。 接下来我尝试: reload("ctbTestModule") 如此处所示 ,但f1(1)仍然返回2 。 最后,我尝试: include("/SomeAbsolutePath/ctbTestModule.jl") 如这里所build议的那样,这是不理想的,因为我必须键入完整的绝对path,因为当前目录可能不是“/ SomeAbsolutePath”。 我得到警告消息Warning: replacing module ctbTestModule听起来很有希望,但f1(1)仍然返回2 […]

Julia是dynamicinput的吗?

很多博客和手册本身都说Julia是dynamicinput的 。 但是从阅读本手册开始,听起来更像是静态键入 types推理 ,如F# 。 Julia静态地键入types推断? 它是dynamicinput的吗? 我假设它是dynamicinput的,手册看起来不太可能是错误的。 types推断是否涉及Julia?

在朱莉娅平行。 function和限制

在他们的arXiv论文中 ,朱莉娅的原作者提到了以下内容: 2.14 Parallelism 。 并行执行由标准库中的Julia实现的基于消息的多处理系统提供。 语言devise通过提供对称协程来支持这样的库的实现,对称协程也可以被认为是协作调度的线程。 此function允许在库中隐藏asynchronous通信,而不需要用户设置callback。 Julia目前不支持本地线程,这是一个限制,但是具有避免同步使用共享内存的复杂性的优点。 这是什么意思,说朱莉娅不支持本地线程 ? 什么是本地线程? 其他解释型语言如Python或R是否支持这种并行性? 朱莉娅独自一人在这?

加快茱莉亚写得不好的R例子

Julia比较性能和R的例子看起来特别复杂 。 https://github.com/JuliaLang/julia/blob/master/test/perf/perf.R 什么是最快的性能,你可以从下面的两个algorithm中得出(最好是解释一下你改变了什么使它更像R)? ## mandel mandel = function(z) { c = z maxiter = 80 for (n in 1:maxiter) { if (Mod(z) > 2) return(n-1) z = z^2+c } return(maxiter) } mandelperf = function() { re = seq(-2,0.5,.1) im = seq(-1,1,.1) M = matrix(0.0,nrow=length(re),ncol=length(im)) count = 1 for (r in re) { for (i […]