If I execute the code below (uncommented) in VS Code, ERROR: LoadError: UndefVarError: @drawsvg not defined. As is, it prints: @draw @eps @imagematrix @imagematrix! @layer @pdf @png @polar @setcolor_str @svg
using Luxor
n=names(Luxor)
#=
@drawsvg begin
for _ in 1:10
circle(O, 3, :fill)
# new coordinates
translate(70 * rand() - 35, 70 * rand() - 35)
rotate(2 * pi * rand())
end 200 200
=#
for n in names(Luxor)
if string(n)[1] == '@'
println(n)
end
end
The drawing code was posted here in January. Please, what am I missing?
What about the Julia version? Also, sometimes a package will be “held back” and not upgraded if it would otherwise break your current environment, so you might be out of date elsewhere…
@cormullion: Since I had just installed Julia recently, I couldn’t understand how my Luxor was 2 years behind. One of the things I had done along the way was to follow instructions from the book “Think Julia”: “A convenience package is provided that can be directly added to Julia. Just type add https://github.com/BenLauwens/ThinkJulia.jl in the REPL in Pkg mode,…” I didn’t have much success with that and moved on to another book, " Interactive Visualization and Plotting with Julia".
To the point, I tried the “convenience” today and Luxor 3.7 was replaced by Luxor 1.12.0. Updating didn’t change it. I removed ThinkJulia and reran update to get back to Luxor 3.7.0. I have no idea how I got to Luxor 2.11.0 above, but I suppose something similar occurred. Not curious, so no question. Thanks again for your help.
Yes, once upon a time, ThinkJulia.jl was shiny and new, and integrated Luxor as a simple turtle-graphics component. But time has passed and ThinkJulia.jl has been neglected for over three years, now. Although much of it should still be useful, there will be some versioning issues to be addressed: typically, you’d set up an environment for working with a set of older packages, and a different environment when you want to use more recent versions. The package manager is designed to allow this.