A tutorial from Cyrill Mottier