2.22 Exercise 2.22
The first procedure produces the answer list in the wrong order because it conses the square of the current entry to the front of the answers list. You can do this and get the result list in the correct order when in a recursive process because the cons calls will be evaluated in reverse order, appending earlier items in the list to the front. However, when in an iterative process, you append to the front of the list in order of traversal, meaning that later items are squared and appear earlier in the list.
The second procedure does not work because conses a list to a value, which does not produce a valid list structure.