Des livres que j’ai bien aimé ou que je prévois de lire (quand j’aurais la motivation et le temps).
J’ai lu

Types and Programming Languages (TAPL) par Benjamin C. Pierce
Super bouquin qui explique les langages fonctionels en partant de rien.
La difficulté est très progressive, et le livre nous guide dans l’implémentation d’un langage fonctionnel, qui évolue au fil des chapitres en y intégrant les concepts rencontrés.

Introduction to Algorithms (CLRS) par Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest et Clifford Stein
Une « introduction » aux algorithmes trés exaustive, on y trouve la plus part des algortihmes classiques dans de nombreux domaines.
Le tout écrit en pseudo-code très clair qui peut être facilement adapté à un langage impératif (et souvant à un langage fonctionnel).
Les solutions aux exercices ne sont pas directement dans le livre mais on en trouve en ligne.

Crafting interpreters par Robert Nystrom
Dans le but de coder un interpeteur du C je suis en train de dévorer ce livre, qui pour l’instant répond à mes questions.
En pleine lecture

Calculabilité par Benoît Monin et Ludovic Patey
Un livre qui parle (comme son nom l’indique) de calculabilité.
Les exercices (avec correction) vont de la simple application à des exercices casses têtes qui permettent de se casser la tête.

Les clefs pour l’info par Ismael Belghiti, Roger Mansuy et Jill-Jênn Vie
Des beaux exercices d’informatiques, la difficulté varie beaucoup et les corrections, très claires, sont enrichies de remarques toujours intéressantes.

Purely Functional Data Structures par Chris Okasaki

Le Point Aveugle par Jean-Yves Girard
À lire

Topoi par Robert Goldblatt

Algorithms on Strings, Trees, and Sequences par Dan Gusfield