In [1]:
## List of common packages that we use in class.
# and how to add them! 

common_packages = [
  "Plots", # needs to be installed 
  "LinearAlgebra", # built-in 
  "SparseArrays", # built-in 
  "Statistics", # built-in
  "Random", # built-in
  "DelimitedFiles", # used to be built-in...maybe still is? 
  "CSV", # needs to be installed
  "DataFrames", # needs to be installed
  "Printf", # built-in
  "NearestNeighbors", # needs to be installed
  "Distributions", # needs to be installed
  "Arpack", # needs to be installed
  "KahanSummation", # needs to be installed
  "BenchmarkTools", # needs to be installed
  "StableRNGs", # needs to be installed
]

# to install a package... 
# repl way or program way...
# I almost always use the repl way.
# you press the ']' key to enter the package manager mode

# you just saw a demo of that... 
Out[1]:
15-element Vector{String}:
 "Plots"
 "LinearAlgebra"
 "SparseArrays"
 "Statistics"
 "Random"
 "DelimitedFiles"
 "CSV"
 "DataFrames"
 "Printf"
 "NearestNeighbors"
 "Distributions"
 "Arpack"
 "KahanSummation"
 "BenchmarkTools"
 "StableRNGs"
In [2]:
## 
using Pkg # this loads the package manager which is built in
Pkg.add("StableRNGs")
    Updating registry at `~/.julia/registries/General`
    Updating git-repo `https://github.com/JuliaRegistries/General.git`
   Resolving package versions...
  No Changes to `~/.julia/environments/v1.10/Project.toml`
  No Changes to `~/.julia/environments/v1.10/Manifest.toml`
In [3]:
## More advanced, you can have different environments for different projects
# each environment can have it's own version of each package in case
# there are version specific requirements. 
# This _isn't_ needed for this class.