1.4 How to use this book?

This book is meant to be used as the backing material for the lecture series. In principle, all information covered in the lectures can be found within this book (disregarding spontaneous disussions and questions that might arise during a lecture). The author is aware that different students might prefer different learning styles, so this book will serve as a reference to all those students that prefer to work with a textbook instead of making notes during a lecture. Also, the author was a student themselves in the past, and as such expects that not every student will listen to every lecture. This book does not, however, replace participation in the lab part of the course. Gaining hands-on experience is at the core of this lecture series, so attendence of the lab is mandatory.

Besides a lot of text, throughout this book students will find several exercises, which range from conceptual questions to small programming tasks. These exercises are meant to encourage students to recap the learned material and sometimes to do some further research on their own. Thus, many exercises are deliberately stated very broad and no answers are provided. Most of the exercises will also be dicussed during the live lectures.

Additionally, this book contains many code examples. Whenever applicable, the examples can be run using a link right below the example, which looks like this:

Run this example

The examples are run using the Compiler Explorer tool, which is covered in chapter 2.