Итого, что бы ты ни делал, тебя обвинят в читерстве или, как минимум, некорректных бенчмарках, потому что выиграли не С. Придерутся даже к тому, что ты не указал в методике измерений, что происходило с прерываниями и какая была другая нагрузка на машину. Если же в твоих бенчмарках выигрывает С, то можно делать что угодно (включая сравнение неэквивалентных алгоритмов, использование старых версий компилятора хаскеля, заточка под конкретную архитектуру кода на C с -march=native без указания этого, и так далее), и всё будет в порядке. А если ты типа как нашёл что-то, что выглядит и звучит как объяснение (не имеющее вообще никакого смысла, вроде упомянутого в комментах тезиса о том, что std::min({}) создаёт вектор), то ты, короче, молодец.