Heres an interesting paper by Landin (a pioneer of function programming and denotational semantics, both of which are major computer science cornerstones)
http://ttic.uchicago.edu/~blume/classes/aut2008/proglang/papers/Landin-next-700.pdfIt really provides a nice insight into language design - a dated paper (1966) but one of the classics.