Julia lectures update


I noticed that the Julia lectures are still using 0.6, when will it be updated to 1.0?


We’re currently in the process of updating to 1.0! Hopefully will be updated in a few weeks


Thanks for all your hard work! Do you have a status update for the lecture upgrade to 1.0?


All the lectures are updated to Julia 1.0. You could obtain the Jupyter notebook for a lecture manually through the source. The last changes before updating the website are: #52 and #67. In addition, there will be a few enhancements which will occur progressively to clean up the lectures (e.g., use of Parameters.jl, Expectations.jl, and some fresh re-writes).


First of all, again thanks for all the hard work!

I see from #67 that issue trackers existing for every lecture. The Re-writes tracker #160 has only one issue #162. Are you addressing in the re-writes tracker general enhancements and re-writes or also updates to 1.0.1?

I am asking because I run into some depreciation warnings and problems due to the new scoping rules in some of the lectures. Should I open an issues at those lectures?


Everything is updated to Julia v"1.0.z". The re-writes are only enhancements. Julia 1.0 doesn’t have the deprecations so I am assuming you mean running Julia 0.7 with the Julia 0.6 kernel? You can follow the instructions on the README to generate the latest versions of the notebooks and test them with Julia v"1.0.1".


Not exactly. I took the code for example for the Shortest Path lecture directly from the repository and run it in the REPL (Julia 0.7). I have not wrapped my head around this .toml structure yet so maybe I missing out if I can run the lecture code directly in the REPL or via Atom or not.


Hi Nicolas,

Just to clarify some points:

  1. In terms of the lectures, it’s best to consider 0.6 as the last stable release, and the rewrites as a nightly build. Like Jose said, the base code will work almost always, but some features like plots might not yet. The way to build a Jupyter notebook from the source rST is to run make jupyter from the lecture-source-jl directory, after installing QuantEcon/sphinxcontrib-jupyter. Detailed instructions are on the lecture source repo.

  2. For the TOML, the basic idea is that the Project.toml tells you what dependencies you need (like a REQUIRE file would), and the Manifest.toml specifies exact versions (unlike a REQUIRE file, which let you specify ranges of versions, etc.) The second file is optional, for when you want to pin down an exactly reproducible state. The Pkg3 solution we’ll be using for the lectures is at this repo, if you want to take a look.

  3. Specifically to the short_path lecture, the source-built version works exactly on 1.0. In terms of a global timeframe, all I know is that over the last week we had to work through a lot of infrastructure stuff (i.e., the InstantiateFromURL), and hopefully we can push forward more quickly on the lectures proper.

Hopefully this helps!


Hi Arnav,

I got caught up in the 0.6 - 0.7 transition and overlooked the impact of the new scoping rules when the code is run in the REPL in absence of Project.toml and Manifest.toml files . Jose kindly pointed to the SoftGlobalScope.jl package which simplifies the variable scoping rules for people who prefer a Vim-REPL or Atom interface over working/ developing/ teaching with Jupyter notebooks.

Maybe we should point out somewhere in the documentation or the Getting started section that copy-pasting lecture code from the website to the REPL or Atom might not work in 1.0.x anymore.


The scoping and environment questions are actually orthogonal (that is, I can activate a set of TOML files from the REPL using pkg> activate foo, and scoping wouldn’t change). Even if that TOML included SoftGlobalScope, I’d still have to use the package and apply the macro in the REPL to get mileage out of it.

That’s a good point about the warnings; we actually already have a note on this in the new “Julia Essentials” lecture. See here.

There’s a line in the current getting started which says “Note: In these lectures we assume you have version 0.6 or later,” which I think needs to be updated. Should be done soon.


Thank you so for your all your hard work and support. It is a wonderful place to Learn and Excel. Got a very good kick start on my Julia learning.