Je n'arrête pas d'entendre comment on doit apprendre la théorie des catégories pour vraiment comprendre la théorie du langage de programmation. Jusqu'à présent, j'ai appris beaucoup de PL sans jamais entrer dans le domaine des catégories. Cependant, j'ai pensé qu'il était temps de faire le saut pour voir ce qui m'avait manqué.
Malheureusement, aucune des sources que je peux trouver ne semble établir de connexion avec les systèmes de type ou la programmation. Ils disent que c'est une introduction à la théorie des catégories pour les informaticiens, mais se tournent ensuite vers un non-sens abstrait général (je le dis avec amour) sans donner d'exemples ou d'applications pratiques.
Je suppose que ma question est en fait double:
- La théorie des catégories est-elle essentielle pour comprendre les "concepts profonds" en PL?
- Qu'est-ce qu'une source qui explique la théorie des catégories du point de vue des applications pratiques pour taper les systèmes et la programmation?
Jusqu'à présent, le plus loin que j'ai obtenu est une conception vague des foncteurs (qui ne semblent pas être liés aux foncteurs en ML, pour autant que je sache). Je redoute l'abstraction que je devrai garder dans ma tête pour comprendre les monades d'un point de vue théorique de catégorie.