Pluto.jl 与 Jupyter Notebook

Len*_*art 6 julia jupyter-notebook pluto.jl

Pluto.jl 和 Jupyter Notebooks 之间有什么区别?

我如何决定应该选择哪个来教学生?

有性能差异吗?

我只找到了https://www.reddit.com/r/Julia/comments/kxdjzh/pluto_vs_jupyter_notebook/,其中不包含很多细节。

osb*_*sbm 6

来自Pluto.jl github 页面

Pluto 笔记本由小块 Julia 代码(单元)组成,它们一起形成反应式笔记本。当您更改变量时,Pluto 会自动重新运行引用该变量的单元格。...

将Pluto.jlJupyter Notebooks 与 Julia结合使用的主要区别在于Pluto.jl 是动态的。它根据最后一个单元格重新运行上述所有单元格。而 Jupyter Notebook 的输出仅在创建它们的代码块发生变化时才会发生变化


Mar*_*del 5

  • 我发现 Pluto 最大的优点是,笔记本电脑的设计会产生相同的结果。在 Jupyter 中,创建依赖于单元执行顺序的结果非常容易,而这在 Pluto 中很难做到。

  • 在 jupyter 中,您可以选择逐个执行单元,如果您正在进行大量计算,这可能会很有用。这在冥王星中无法完成,但人们在编写笔记本时学会考虑到这一点。

  • Jupyter 对幻灯片的支持非常好。据我所知,对于冥王星来说,只存在概念证明。

  • 两者都是高性能的。

对于教学学生我个人更喜欢Pluto。施加的一些限制使得调试这些笔记本变得更加简单(结果不依赖于单元执行顺序)。此外,该笔记本基本上是一个标准的 Julia 源代码文件,可以使用任何文本编辑器轻松操作。Pluto 的反应性在教育环境中也非常有用,因为它鼓励学生摆弄笔记本。最后,还有麻省理工学院的课程“计算思维简介”,它使用这些笔记本进行讲座和练习,它们对如何使用 Pluto 笔记本进行教学有很大的启发。我希望这些见解正是您所寻找的。

  • 来自 R 和 Rmarkdown 工作流程,我喜欢 Pluto.jl,只是还没有使用 Julia(或 python)。据我了解,Jupyter 笔记本不仅取决于笔记本中单元格的顺序(即自上而下),还取决于*执行顺序*。从科学可重复的工作流程角度来看,这似乎是有问题的(如果是真的 - 我不使用,所以这可能已经改变)。 (2认同)
  • 另一个好处是 Pluto 笔记本包含一个可重现的包环境,其中所有依赖项及其版本都是固定的。与 Jupyter 相比,这是一个主要优势。对于长时间运行的单元,现在可以在 Pluto 中停用它们以防止实时更新。 (2认同)