Primers

Primers are very short tidbits of information, designed to cover a single, specific concept. They rely far more on specific features from Julia, and they are intended to show ways in which we can use the language.

Advanced control flow

Advanced control flow: start the lesson
Reading time: 2 minutes
Key concepts: control flow
In the first lesson, we have presented the flow of execution as something largely unescapable. In practice, there are two important operations we may want to perform: skip an iteration, or stop the iteration process entirely. In this primer, we will see how this can be achieved using the break and next keywords. Undestanding how next and break can be used is extremely useful as you start developing more complex workflows.

Optimization

Optimization: start the lesson
Reading time: 0 minutes
Status: construction
Key concepts: optimization profiling
function initial_mutation(x) end initial_mutation (generic function with 1 method)

Map, filter, reduce

Map, filter, reduce: start the lesson
Reading time: 0 minutes
Status: construction
Key concepts: map filter reduce
A lot of computing tasks involve going through arrays, or collections, of values, and selecting some of them, applying transformations, and returning values based on them. After reading the lesson on Control flow, you are equipped to do this using for, if, and while. But most tasks can actually be adressed using an approach which is even more simple: map/filter/reduce. Map map(x -> x * 2, 1:5) 5-element Array{Int64,1}: 2 4 6 8 10 Filter filter(isodd, 1:5) 3-element Array{Int64,1}: 1 3 5 Reduce reduce(+, 1:3) 6 Map on slices

Parallel computing

Parallel computing: start the lesson
Reading time: 0 minutes
Status: construction
Key concepts: optimization parallel computing
Extra packages: Distributed
Sometimes, we really need more than one CPU to get things done in a reasonable amount of time. using Distributedaddprocs(2) 2-element Array{Int64,1}: 14 15