The poster of this thread on the PLT discussion list wondered why Scheme code is so much slower than Python. It was interesting to see how the question was answered because there were at least 3 levels to the problem:
- The source code to the solution itself
- How the source code worked “under the covers” (it called into C functions)
- An implementation in Scheme similar to how Python worked under the covers
Finding an explanation didn’t just involve comparing the code, it required understanding that the Python code actually called into C functions, and then converting the Scheme code into a similar “stateful” style of program. In programming, thinking is required!