If language design and programming methodology are to advance from a trade-craft to a rigorous discipline, it is essential that we first get the definitions right. Then, and only then, can there be meaningful analysis and consolidation of ideas.
Harper’s work in more depth: http://www.cs.cmu.edu/~rwh/pfpl.html
Harper’s work in more depth: http://www.cs.cmu.edu/~rwh/pfpl.html