Вы цитируете лямбду, поэтому она не оценивается.
Если вы просто введете (λ (x) x) в приглашении, DrScheme покажет вам #<procedure>
, что означает, что он действительно оценил лямбду и вернул закрытие. Цитируя это, вы даете Схеме просто список символов.
Если вы хотите поместить свои функции в список, вы можете сделать:
((first (list (lambda (x) x) (lambda (x) (* x x)))) num)
Цитата позволяет вам составить список, да, но список которого не оценивается. Функция list создает список из всех своих аргументов после их оценки.
Вы также можете поставить кавычки в списке, если хотите:
((first `(,(lambda (x) x) ,(lambda (x) (* x x)))) num)