Dans le livre d'Andrew W. Appel, Modern Compiler Implementation in ML , il dit au chapitre 17 que la théorie de la calculabilité montre qu'il sera toujours possible d'inventer de nouvelles transformations d'optimisation et procède pour prouver qu'un compilateur entièrement optimisé résoudra le problème d'arrêt: un programme Q qui ne produit aucune sortie et ne s'arrête jamais peut facilement être remplacé par sa représentation optimale, Opt (Q) , étant "L: goto L". Un compilateur entièrement optimisé peut donc résoudre le problème d'arrêt.
Ma question est donc la suivante: existe- t-il un compilateur entièrement optimisé pour terminer les programmes? Mes seules pensées sont les suivantes: même si un programme est garanti de se terminer, il peut toujours être arbitrairement complexe, et pour tout compilateur d'optimisation concret, C, on pourrait peut-être construire un programme qui prend C en entrée et produit en quelque sorte un programme pire que une sorte de cas d'angle.
En outre, quelles sont les implications de se limiter à mettre fin aux programmes?