Well, the aim of this crash course was to introduce most aspects of Mercury as quickly as possible. It's not the case though that all of those aspects are always involved when you're writing Mercury.

Suppose I described Earth as a planet with flowing molten lava, frozen glaciers, barren desserts, and deadly tornadoes. That's a whole lot of environmental extremes to have to deal with! How does anyone live on this planet?

People mostly live away from the extremes. Likewise a lot of the Mercury you'll write will be relatively mundane and easy to think about. (And I wouldn't describe any particular feature of Mercury as 'flowing molten lava'.)

Or suppose I described a car as a vehicle that can move at 5 miles per hour, and at 60 miles per hour, and forwards, and also backwards. It would certainly be crazy to think that cars can do all these things simultaneously, or that drivers of cars need to be in a mindset to deal with all those behaviors at the same time – that while you're driving at high speed down a highway you should also be turned around in your seat and staring out your back window to make sure you don't reverse over a pedestrian.

Cars have physical gears that shift to permit different modes of operation, and drivers have mental gears that shift correspondingly, and when you're writing Mercury you can shift between describing logical relations (when writing clauses and facts), or modelling your data with types (when writing type declarations), or crafting new Mercury insts to permit some higher-order programming (when writing inst and mode declarations and the pred/func declarations that use them), and so on.

Far from having to keep all this in mind when you write a single line of Mercury, the language is such that visually distinct parts of Mercury programs map to different subsets of the language.