tomtom
August 28, 2018, 11:58am
1
Hello, maybe a dump question here.
I wanna experiment something that requires some changes in source code. Here I’m using Mac and the files are located in:
/Applications/Julia-0.7.app/Contents/Resources/julia/share/julia/stdlib/v0.7/InteractiveUtils/src
Somehow after modifying the files (after backup). This is nothing changed in a restarted Julia? My concept is that everything in Julia are defined in these .jl
files.
Any suggestions? Thanks.
Code in the stdlib
is compiled into the Julia system image, so modifying the source code will not have any affect unless you rebuild Julia.
2 Likes
mauro3
August 28, 2018, 12:11pm
4
There is Revise.track(Base)
of the package https://github.com/timholy/Revise.jl . It think in your case you can do Revise.track(InteractiveUtils)
.
5 Likes
jling
August 29, 2018, 9:46pm
5
speaking of which, we need to run make -j ..
() every time we change anything?
1 Like
I’m basically repeating @mauro3 ’s post here, but since it must not be entirely clear:
If you’re not using Revise (or Juno’s re-evaluation capability, or manual cut-and-paste redefinition):
If you change packages or personal code, you have to restart Julia but you don’t have to rebuild anything
If you change Julia’s Base module, compiler, or stdlibs: yes you have to rebuild Julia
If you are running Revise:
For changes to packages, it should generally happen automatically. For scripts you have to use includet
For changes to Base, use Revise.track(Base)
. Likewise use Revise.track(Statistics)
if you’ve made changes to the Statistics
stdlib. And so on.
11 Likes