Julia
Full course · 21 lessonsJulia is a high-performance, dynamically typed language designed for scientific computing, numerical analysis, and machine learning. It combines the speed of C with the ease of Python.
Getting Started with Julia
REPL, scripts, and the Julia execution model.
Values and Types
Core types: integers, floats, booleans, chars, strings.
Variables and Scoping
Assignment, const, local vs global scope, and closures.
Arithmetic and Operators
Numeric operators, chained comparisons, and bitwise ops.
Functions
Definitions, keyword arguments, anonymous functions, splatting.
Multiple Dispatch
Method definitions, abstract types, and dispatch specificity.
Control Flow
if/elseif, ternary, short-circuit, and loops.
Strings and Text
UTF-8 handling, interpolation, and string functions.
Arrays
Vectors, comprehensions, broadcasting, and matrices.
Tuples, NamedTuples, and Dictionaries
Immutable tuples, keyed maps, and sets.
Composite Types and Structs
Immutable and mutable structs, inner constructors.
Abstract and Parametric Types
Type parameters, unions, and the type hierarchy.
Modules and Packages
Namespaces, Pkg management, import vs using.
Metaprogramming
Symbols, expressions, macros, and code-as-data.
Errors and Exceptions
try/catch/finally, throw, and error handling patterns.
File I/O
Reading and writing files, parsing CSV-like data.
Generators and Iterators
Ranges, lazy generators, zip/enumerate, reduce.
Missing, Nothing, and NaN
Handling absent and undefined values idiomatically.
Parallelism and Concurrency
Threads, tasks, channels, and distributed computing.
Performance and Type Stability
Type stability, @code_warntype, and allocation-free code.
Ecosystem and Next Steps
DataFrames, Plots, the community, and advanced topics.

