juliaacademy / juliatutorials Goto Github PK
View Code? Open in Web Editor NEWLearn Julia via interactive tutorials!
Home Page: https://julialang.org/learning/
License: MIT License
Learn Julia via interactive tutorials!
Home Page: https://julialang.org/learning/
License: MIT License
Hi there.
I also wanted to add separately that the validation results function doesn't really explain what is wrong or missing so it's a bit confusing. Also, it seems that given the information on the page, there is more than one "correct" answer so, perhaps, those can be taken into account somehow.
Nonetheless, I am enjoying the tutorial so I'm motivated to see it through. Thanks again.
I was working through the lectures for the Foundations of Machine Learning tutorial and cloned the Jupyter notebook into my local instance of VS Code. Simple fix is to add using Statistics
before mean
function is called. Will submit pull request shortly.
While working through some of the tutorials I've been encountering AssertionError
when checking my answer against the provided solution. For the most part, I belive the error occurs due to a difference in the number of decimals returned from my code compared to the provided solution. In these cases, the issue has been resolved by replacing ==
with ≈
(\approx
) in the assertion line. However, this does not work in exercise 11.2 in tutorial 12. The exercise is to diagonalize an eigenvector and subsequently asserting it against a provided "solution" matrix. However, running the assertion line returns an AssertionError
, when asserting both equality (==
) and approximate equality (≈
).
I've been reading through my code multiple times now, and I am at a loss at what causes the AssertionError
. The values in my diagonal matrix (A_diag
) are seemingly identical to the solution matrix, and setting the statement to approximately equal (\approx
) renders the same error. My assumption is that I can count out decimal error here, so what may cause the error? Also, even if the assertion renders the statements unequal, why would this will return an error and not FALSE
?
My code example:
julia> using LinearAlgebra;
julia> A =
[
140 97 74 168 131
97 106 89 131 36
74 89 152 144 71
168 131 144 54 142
131 36 71 142 36
];
julia> A_eigv = eigen(A).values;
julia> A_diag = Diagonal(A_eigv)
5×5 Diagonal{Float64, Vector{Float64}}:
-128.493 ⋅ ⋅ ⋅ ⋅
⋅ -55.8878 ⋅ ⋅ ⋅
⋅ ⋅ 42.7522 ⋅ ⋅
⋅ ⋅ ⋅ 87.1611 ⋅
⋅ ⋅ ⋅ ⋅ 542.468
julia> @assert A_diag == [-128.493 0.0 0.0 0.0 0.0;
0.0 -55.8878 0.0 0.0 0.0;
0.0 0.0 42.7522 0.0 0.0;
0.0 0.0 0.0 87.1611 0.0;
0.0 0.0 0.0 0.0 542.468]
AssertionError: A_diag == [-128.493 0.0 0.0 0.0 0.0; 0.0 -55.8878 0.0 0.0 0.0; 0.0 0.0 42.7522 0.0 0.0; 0.0 0.0 0.0 87.1611 0.0; 0.0 0.0 0.0 0.0 542.468]
Stacktrace:
[1] top-level scope
@ In[90]:1
[2] eval
@ ./boot.jl:360 [inlined]
[3] include_string(mapexpr::typeof(REPL.softscope), mod::Module, code::String, filename::String)
@ Base ./loading.jl:1094
julia> @assert A_diag ≈ #\approx
[-128.493 0.0 0.0 0.0 0.0;
0.0 -55.8878 0.0 0.0 0.0;
0.0 0.0 42.7522 0.0 0.0;
0.0 0.0 0.0 87.1611 0.0;
0.0 0.0 0.0 0.0 542.468]
AssertionError: A_diag ≈ [-128.493 0.0 0.0 0.0 0.0; 0.0 -55.8878 0.0 0.0 0.0; 0.0 0.0 42.7522 0.0 0.0; 0.0 0.0 0.0 87.1611 0.0; 0.0 0.0 0.0 0.0 542.468]
Stacktrace:
[1] top-level scope
@ In[97]:1
[2] eval
@ ./boot.jl:360 [inlined]
[3] include_string(mapexpr::typeof(REPL.softscope), mod::Module, code::String, filename::String)
@ Base ./loading.jl:1094
FYI: I also posted this issue on StackOverflow.
A minor typo is present in ./introductory-tutorials/intro-to-julia/03. Data structures.ipynb
in the very last line.
I'm learning Julia and trying to translate these tutorials into Chinese. What shoud I notice to do it properly?
PS: I'm a green hand in Github. I'm even not sure that is "Issues" the place to ask questions like this?
*_*
Hey @nassarhuda should we remove the DS notebooks from here: https://github.com/JuliaAcademy/JuliaTutorials/tree/main/introductory-tutorials/broader-topics-and-ecosystem/intro-to-julia-for-data-science in favor of the ones in the separate Repo you created?
In the 11. Basic linear algebra
for #### Solving linear systems
The problem
When I do the
A\b
I get this :
LinearAlgebra.SingularException(3)
Stacktrace:
[1] checknonsingular at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/LinearAlgebra/src/factorization.jl:12 [inlined]
[2] #lu!#99(::Bool, ::Function, ::Array{Float64,2}, ::Val{true}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/LinearAlgebra/src/lu.jl:41
[3] #lu! at ./none:0 [inlined]
[4] #lu#105(::Bool, ::Function, ::Array{Int64,2}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/LinearAlgebra/src/lu.jl:251
[5] lu at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/LinearAlgebra/src/lu.jl:242 [inlined]
[6] (::Array{Int64,2}, ::Array{Float64,1}) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/LinearAlgebra/src/generic.jl:870
[7] top-level scope at In[10]:1
Hi,
these are great examples/tutorials for everyone, who wants to start using Julia with Jupyter.
IMHO, it is required to have a license added to your repository to allow others to use/distribute your work.
Best,
Jens Henrik
How to add memory feature in this reserve calculation or add a global variable type in a Julia module structure-
Code-
function reserves_calc(projection::Projection)
max_t = policy_term(projection)* 12
annual_disc_rate = 0.08
#monthly_disc_rate = maximum(BasicTerm_ME.disc_rate(t,projection)) #0.0064
res_l = zeros(max_t + 1) # Preallocate array for inc_in_res
for t in max_t:-1:0
if t == max_t
res_l[t+1] = 0#BasicTerm_ME.reserves(t, projection)
elseif t > proj_len(projection)[]
res_l[t+1] = 0.0
else
res_l[t+1] = max(-10000000,(val_net_cashflow(t+1, projection) .+ res_l[t+2]) / (1 .+ maximum(disc_rate(t,projection))))#BasicTerm_ME.reserves(t, projection) #- BasicTerm_ME.reserves((t-1), projection)
end
end
return res_l
end
function reserves(t,projection)#, projection::Projection)
x = reserves_calc(projection)
return x[t]
end
I want to use the results of res_l array in reserves function without running reserves_calc function each time.
I think that https://github.com/JuliaComputing/JuliaBoxTutorials/blob/master/introductory-tutorials/intro-to-julia/04.%20Loops.ipynb should be adjusted to reverse the indexing order in the section for loops.
Maybe a brief note to the performance reasons behind this and a link to https://docs.julialang.org/en/v1/manual/performance-tips/#Access-arrays-in-memory-order,-along-columns-1 would be nice as well.
When I use eval(parse(ans))
in JuliaBox or Juno I get:
MethodError: no method matching parse(::Int64)
Closest candidates are:
parse(!Matched::Type{LibGit2.GitCredential}, !Matched::AbstractString) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/LibGit2/src/gitcredential.jl:73
parse(!Matched::Type{LibGit2.GitCredentialHelper}, !Matched::AbstractString) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/LibGit2/src/gitcredential.jl:163
parse(!Matched::Type{Sockets.IPv4}, !Matched::AbstractString) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/Sockets/src/IPAddr.jl:166
...
Stacktrace:
[1] top-level scope at In[4]:1
Hey @bkamins, should we remove the DataFrames notebooks from here as the ones in the DataFrames JA repo seem to be the most up to date.
@ViralBShah thoughts on either renaming and removing references to JuliaBox or renaming, removing references to JuliaBox, and transferring to JuliaAcademy?
On Julia Academy, Multiple Dispatch comes before "Julia is fast" so Multiple Dispatch should be 9 and "Julia is fast" should be 10 potentially.
In Exercises 10.1, the outer product
in Take the outer product of a vector v with itself and assign it to variable cross_v
should be cross product
.
Hey @NHDaly , I wanted to re-start the discussion on the workflow for generating Notebooks and ".jl" files.
I am trying to get the JuliaAcademy resources all set up in their new repos.
In my opinion, it seems easier to use ".jl" files to create notebooks rather than the other way around. I am open to hearing your thoughts!
In notebook 11. Basic linear algebra, the last line checks if cross_v
is correct, but there is no instruction or anything to it.
every time I run this codes
using Pkg
Pkg.add("ORCA")
Pkg.add("PlotlyJS")
using PlotlyJS
Pkg.build("WebIO")
Pkg.build("ORCA")
plotlyjs()
I get these error what I should do,
ORCA → C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\packages\ORCA\jdK40\deps\build.log
┌ Error: Error building ORCA
:
│ internal/modules/cjs/loader.js:800
│ throw err;
│ ^
│
│ Error: Cannot find module './internal/streams/stream'
│ Require stack:
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\lib_stream_readable.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\readable.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\tracker-stream.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\tracker-group.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\index.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\npmlog\log.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\bin\npm-cli.js
│ at Function.Module._resolveFilename (internal/modules/cjs/loader.js:797:15)
│ at Function.Module._load (internal/modules/cjs/loader.js:690:27)
│ at Module.require (internal/modules/cjs/loader.js:852:19)
│ at require (internal/modules/cjs/helpers.js:74:18)
│ at Object. (C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\lib_stream_readable.js:50:14)
│ at Module._compile (internal/modules/cjs/loader.js:959:30)
│ at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
│ at Module.load (internal/modules/cjs/loader.js:815:32)
│ at Function.Module._load (internal/modules/cjs/loader.js:727:14)
│ at Module.require (internal/modules/cjs/loader.js:852:19) {
│ code: 'MODULE_NOT_FOUND',
│ requireStack: [
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\lib\_stream_readable.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\readable.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\tracker-stream.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\tracker-group.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\index.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\npmlog\log.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\bin\npm-cli.js'
│ ]
│ }
│ internal/modules/cjs/loader.js:800
│ throw err;
│ ^
│
│ Error: Cannot find module './internal/streams/stream'
│ Require stack:
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\lib_stream_readable.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\readable.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\tracker-stream.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\tracker-group.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\index.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\npmlog\log.js
│ - C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\bin\npm-cli.js
│ at Function.Module._resolveFilename (internal/modules/cjs/loader.js:797:15)
│ at Function.Module._load (internal/modules/cjs/loader.js:690:27)
│ at Module.require (internal/modules/cjs/loader.js:852:19)
│ at require (internal/modules/cjs/helpers.js:74:18)
│ at Object. (C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\lib_stream_readable.js:50:14)
│ at Module._compile (internal/modules/cjs/loader.js:959:30)
│ at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
│ at Module.load (internal/modules/cjs/loader.js:815:32)
│ at Function.Module._load (internal/modules/cjs/loader.js:727:14)
│ at Module.require (internal/modules/cjs/loader.js:852:19) {
│ code: 'MODULE_NOT_FOUND',
│ requireStack: [
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\lib\_stream_readable.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\node_modules\readable-stream\readable.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\tracker-stream.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\tracker-group.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\are-we-there-yet\index.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\node_modules\npmlog\log.js',
│ 'C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\node_modules\npm\bin\npm-cli.js'
│ ]
│ }
│ ERROR: LoadError: failed process: Process('C:\Users\Acer\.juliapro\JuliaPro_v1.4.2-1\artifacts\345df2b824d1eacefab89d560a9e929ff24c0537\npm.cmd' config set scripts-prepend-node-path true
, ProcessExited(1)) [1]
│
│ Stacktrace:
│ [1] pipeline_error at .\process.jl:525 [inlined]
│ [2] run(::Cmd; wait::Bool) at .\process.jl:440
│ [3] run at .\process.jl:438 [inlined]
│ [4] main() at C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\packages\ORCA\jdK40\deps\build.jl:4
│ [5] top-level scope at C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\packages\ORCA\jdK40\deps\build.jl:30
│ [6] include(::String) at .\client.jl:439
│ [7] top-level scope at none:5
│ in expression starting at C:\Users\Acer.juliapro\JuliaPro_v1.4.2-1\packages\ORCA\jdK40\deps\build.jl:30
└ @ Pkg.Operations C:\Users\julia\AppData\Local\Julia-1.4.2\share\julia\stdlib\v1.4\Pkg\src\Operations.jl:892
Hi there. It's my first day coding & I really appreciate this resource and I find it more or less easy to follow. However, I would recommend either providing a link to a glossary or simply having a glossary available for absolute beginners to explain terminology such as those referring to the various data types & examples given. Just to make the language a bit more accessible.
I'm enjoying the tutorial & like the small exercises. I believe the very first page should also include an exercise or two to make sure people understand how to search for documents. It was also unclear if the information was relevant because of the heading "Jupyter Notebook."
Thank you again for the hard work & service.
The licensing issue identified to us by Software Carpentry is the Licensing.md file in this directory, which has a statement about copyright. Can we simply remove this material, or should we replace it with other licensing info making it clear this material is meant to be free and open? @ViralBShah @DeepakVinchhi
I am using Julia version 1.5.0
In exercise 11.2, when I run
@assert A_eigv == [-128.49322764802145, -55.887784553056875, 42.7521672793189, 87.16111477514521, 542.4677301466143]
is true. But when I run the solution of exercise
eigdec = eigen(A)
eigdec.values
A_diag = Diagonal(eigdec.values)
@assert A_diag == [-128.493 0.0 0.0 0.0 0.0; 0.0 -55.8878 0.0 0.0 0.0; 0.0 0.0 42.7522 0.0 0.0; 0.0 0.0 0.0 87.1611 0.0; 0.0 0.0 0.0 0.0 542.468]
ther output is
AssertionError: A_diag == [-128.493 0.0 0.0 0.0 0.0; 0.0 -55.8878 0.0 0.0 0.0; 0.0 0.0 42.7522 0.0 0.0; 0.0 0.0 0.0 87.1611 0.0; 0.0 0.0 0.0 0.0 542.468] Stacktrace: [1] top-level scope at In[141]:1 [2] include_string(::Function, ::Module, ::String, ::String) at ./loading.jl:1091
I think the implementation is correct but want to confirm.
I am thinking if we need to increase the accuracy of the result or use other numbers.
The link to download doesn't work, and gives an 404.
Wrong link:
https://github.com/JuliaComputing/JuliaBoxTutorials/archive/master.zip
Correct link:
https://github.com/JuliaAcademy/JuliaTutorials/archive/refs/heads/main.zip
@xorJane
vgg = VGG19()
gives an error
EOFError: read end of file
Stacktrace:
[1] read(s::IOStream, #unused#::Type{UInt8})
@ Base ./iostream.jl:399
[2] read
@ ./Enums.jl:22 [inlined]
[3] parse_doc(io::IOStream)
@ BSON ~/.julia/packages/BSON/XAts7/src/read.jl:51
[4] parse_tag(io::IOStream, tag::BSON.BSONType)
@ BSON ~/.julia/packages/BSON/XAts7/src/read.jl:15
[5] parse_doc(io::IOStream)
@ BSON ~/.julia/packages/BSON/XAts7/src/read.jl:53
[6] parse
@ ~/.julia/packages/BSON/XAts7/src/read.jl:101 [inlined]
[7] open(f::typeof(BSON.parse), args::String; kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Base ./io.jl:330
[8] open
@ ./io.jl:328 [inlined]
[9] parse
@ ~/.julia/packages/BSON/XAts7/src/read.jl:102 [inlined]
[10] load
@ ~/.julia/packages/BSON/XAts7/src/read.jl:104 [inlined]
[11] weights(name::String)
@ Metalhead ~/.julia/packages/Metalhead/qsJ7m/src/utils.jl:21
[12] vgg19_layers()
@ Metalhead ~/.julia/packages/Metalhead/qsJ7m/src/vgg19.jl:2
[13] VGG19()
@ Metalhead ~/.julia/packages/Metalhead/qsJ7m/src/vgg19.jl:39
[14] top-level scope
@ In[5]:1
[15] eval
@ ./boot.jl:360 [inlined]
[16] include_string(mapexpr::typeof(REPL.softscope), mod::Module, code::String, filename::String)
@ Base ./loading.jl:1090
on Julia 1.6beta with Metalhead 0.5.1
Not sure if this is the right forum for this, but I have some issue with the last line in lesson 01. "Getting started". The line reads Please click on
Validate on the top, once you are done with the exercises.
However, I can not find any button, or any text for that matter, with this word. Am I doing something wrong, or is this line redundant?
We should update the metadata for these to be on the latest Julia Version since they are ~2 years old.
When I try to do this line in the first tutorial (01):
sum = 3 + 7
Then I get this error
ERROR: cannot assign variable Base.sum from module Main
I guess because it's some sort of reserved word in Base
.
Does sum
need to be renamed?
I am trying to learn Julia and I come across this set of great tutorials.
However, when something in the tutorial went wrong, I am not yet equipped to fix it.
for the prefix notebook, the definition of DummyArray gave out an error syntax: extra token "DummyArray" after end of expression
the definition is as below:
isdefined(:DummyArray) || type DummyArray
length :: Int
read :: Vector
history :: Vector{Any}
DummyArray(length, read=[], history=[])=new(length, read, history)
end
I tried JuliaBox to run the same code, and it yielded the same error message. I am a bit lost as to what the example is trying to demonstrate and how exactly should I define a type in Julia? is it with type or struct keyword? I tried struct and no luck.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.