매카시의 1960년 논문은 표기법에 서로 다른 두 가지 일을 맡기고, e절에서 그 둘이 갈라지는 모습을 볼 수 있어요. 함수는 먼저 M-표현식으로 쓰이는데, 논문이 독자에게 함수를 설명하는 방식이 이거예요. 그다음 S-표현식으로 옮겨져서, 함수를 다른 함수에 넘기고 데이터처럼 다룰 수 있게 돼요.
함수를 설명하기 위한 서술과 연산이 소비할 표현이 꼭 같을 필요는 없어요. 논문에서도 같지 않아요. M-표현식 쪽은 끝내 프로그래머가 실제로 쓰는 표기가 되지 못했고, 데이터 표현이 두 역할을 다 떠맡게 됐어요.
이걸 전부 Lisp 문법이라고 부르면 그 흐름이 납작해지고 실제 선택 하나가 가려져요. 읽는 표기와 프로그램이 조작하는 구조를 하나로 둘지 둘로 둘지 하는 선택이요. Lisp은 하나로 갔어요. 스칼라는 둘을 떼어 두는 쪽이에요. 매크로는 작성한 텍스트가 아니라 타입이 붙은 트리를 받으니까요. 어느 답이 뻔하게 옳다고 보지는 않아요. 갈림길이 아직 열려 있던 모습을 보기에는 이 논문이 좋은 자리예요.