Dans une note datée du 30 novembre 2009, Raymond Chen répondait à une question du commentateur asdf sur l’origine de WIN32_LEAN_AND_MEAN.

Microsoft a introduit ce symbole à l’époque de Windows 95. Sa définition lors de l’inclusion de windows.h empêche l’ajout d’un ensemble d’en-têtes Windows supplémentaires. La liste exacte se trouve dans le fichier windows.h.

Cette option est apparue pendant le passage de Windows 16 bits à Windows 32 bits. Le windows.h de la version 16 bits n’incluait pas ces fichiers. Le symbole permettait donc de retrouver un modèle d’en-têtes minimal pour les petits programmes Windows. Il répondait aussi aux développeurs qui voulaient gérer précisément leurs inclusions. Les en-têtes précompilés étaient encore peu répandus.

Chen se souvenait d’un 80486 à 50 MHz équipé de 8 Mo de mémoire. WIN32_LEAN_AND_MEAN réduisait alors la compilation de chaque fichier C d’environ trois secondes. Un projet de 20 fichiers C gagnait ainsi près d’une minute. Les progrès associés à la loi de Moore et la diffusion des en-têtes précompilés ont ensuite fortement diminué ce gain. La macro avait toutefois une utilité concrète à son époque.