Repository for UCB23 project.
https://jmb280.quarto.pub/julia-guide/
Outline for project
- Installation
- Installing Julia
- Installing IDE (VSCode)
- Installing packages
- Basics
- REPL vs scripts
- Simple arithmetic
- Variables and types
- Function (and macros?)
- Help
- Numeric types
- Differences between them
- Errors that crop up
- Control flow
- Conditionals
- Loops
- Recursion
- Errors
- Arrays
- Arrays (mutable) and tuples (immutable)
- Vectorised operations
- Broadcast, slurp, splat
- Mild linear algebra
- Multiple dispatch
- Types/functions recap
- Methods (with input type specification)
- Promotion
- Reading and writing data
- stdin and stdout examples
- Opening file from path
- CSV.jl?
- Custom structures
- Custom functions
- Custom types
- Custom modules
- Export, and using/import
- Use of Pkg
- Include
Order is approximate and could change
Incomplete, still more to write about, including
- String manipulation
- Macros and code generation
- Perhaps choose some packages to write about
- Plotting
- Test cases
Would also be nice to have some case studies, don't know what format yet
- Sum of integers 1 to 1000 seemed to work well
- Ordering a list
- Root finding or similar numerical methods
- For more complicated examples we might be able to reuse one from the CATAM project
- Logistic map
- Julia set / Mandelbrot set (relation to logistic map?)
References
See paperpile