Algunas observaciones aleatorias a partir de (lo siento, no lo que usted solicitó) un equipo de la perspectiva de la ciencia:
El dichotomoy está estrechamente paralelo a una elección que se debe hacer a la hora de definir la semántica de los lenguajes de programación. Uno puede llevar alrededor de un entorno que asigna los nombres de las variables a los valores que actualmente están vinculadas, o aplicar ligaduras de variables mediante la sustitución de algunos sintáctico de la representación de los valores en la expresión en el ámbito de la unión operador.
Ambos estilos se encuentran en el equipo de la ciencia de la literatura, pero la primera (con el medio ambiente) parece ser el más popular por varias razones. O tal vez yo soy parcial; yo prefiero entorno basado en la semántica.
El principal atractivo de la sustitución basado en la semántica es que parece técnicamente más sencilla, porque depende de la maquinaria (por sustitución, etc) que por lo general uno tiene que desarrollar de todos modos con el fin de apoyar sintáctica razonamiento acerca de los programas y fragmentos de programa. Es también más cerca de la concepción clásica del cálculo lambda como puramente sintáctica de reescritura del sistema.
Por otro lado, también depende de tener una representación sintáctica para cada posible valor. Esto desdibuja la distinción entre sintaxis y semántica (en su lógica de configuración se siente poco elegante a tener que dejar incluso el idioma que trabajar con variar según el dominio de la interpretación; que hace es extraño si en el mismo aliento que usted necesita para comparar las diferentes interpretaciones de la misma lengua). Por otra parte, en una de lenguajes de programación contexto, a menudo se desea razón acerca de las propiedades que dependen fundamentalmente en el hecho de que algunos valores posibles no puede ser escrito como cerrado términos, que está en conflicto directo con lo que uno necesita para una sustitución basado en la semántica. Que problema puede ser solucionado con la suficiente técnica fiddlework, por supuesto, pero que realmente no se ven bien.
El medio ambiente basado en la semántica no tiene estos problemas, y provee una clara ruptura entre la sintaxis de las fórmulas y su semántica.
El medio ambiente basado en la semántica también tiene la ventaja de ser estrictamente compositivo en el que el significado de una expresión depende únicamente del significado de sus partes en lugar de en su sintaxis -- el significado de ser un mapeo de entornos (valores, acciones, valores de verdad, lo que sea) que puede ser cosificado como razonablemente natural semántica de objetos en el nivel meta.
Para alguien que viene al formalismo de un fondo de programación, el medio ambiente basado en la semántica se siente más cerca de lo que "realmente sucede" con una expresión que contiene las variables (véase también el de Brian comentario). Por otro lado, la sustitución parece ser la manera en que las variables se explica generalmente en la escuela primaria de matemáticas de la educación.
En cada caso, el hecho de que también se puede hacer de otra manera con resultados equivalentes, por supuesto, una relevante e interesante propiedad que merece la prueba y la discusión.