Потому что я вижу, что это происходит: это другой вопрос, чем Какие оптимизации можно ожидать от GHC для надежной работы?, потому что я не прошу самых надежных оптимизация, просто самая умная/мощная.
Я специально ищу неинтуитивную оптимизацию, которую GHC делает, что может иметь серьезные последствия для производительности и демонстрировать мощь оптимизации компилятора, связанную с ленивой оценкой или чистотой. И прямые объяснения о том, как добраться до них.
Лучшие ответы будут иметь:
- Объяснение оптимизации и почему она настолько умна или мощна.
- Почему оптимизация повышает производительность.
- Как GHC распознает, когда он может использовать эту оптимизацию
- Что оптимизация фактически преобразует код в
- Почему эта оптимизация требует ленивой оценки или чистоты.