haskell - otherwise - ¿Cuál es el historial de los nombres de variables x y xs?
if else haskell (3)
Estoy tratando de recoger un poco de Haskell, y estoy alternando entre asombro y desconcierto. Una de las cosas realmente alienantes para mí, por más trivial que parezca, es la expresión de emparejamiento de patrones (x:xs)
. ¿De dónde vienen esos nombres variables? Podrían ser cualquier cosa (kernel:cob)
, (spam:eggs)
(inclinar la mano un poco), o - más sensatamente, en mi opinión, (h:t)
, significando ''head'' y ''tail'' .
Supongo que el prefijo x
es útil para indicar que ambos elementos provienen de la misma lista, entonces (xh:xt)
o incluso solo (x:xt)
si te sientes especialmente conciso. Pero por qué s ? Qué significa eso? ¿De dónde vino? Siento, en este momento, que saber me ayudaría a sobrellevar mi confusión.
Tal vez estoy pensando en esto de la manera incorrecta; por favor siéntete libre de decirme eso.
Podemos tomar los orígenes de x
mucho más atrás, por supuesto :-) François Viète (1540-1603) produjo un libro titulado In artem analyticem isagoge ("Introducción al arte analítico"), que fue el primer trabajo que usó sistemáticamente letras para representar números.
Editar: Porges, a continuación, me señala la muy buena historia de notaciones matemáticas de Cajori. Para mi agradable sorpresa, todo el trabajo está disponible en línea: http://archive.org/details/historyofmathema031756mbp
x
es la transcripción europea de la palabra árabe شيء (pronunciar ''chi'', o ''chaï''. o ''tchi'', dependiendo del acento). Esta palabra significa "cosa" o "algo" y fue utilizada por los primeros matemáticos árabes e iraníes como un símbolo para designar un valor desconocido o no fijo en una expresión matemática.
De vuelta a estos tiempos, ''x'' podría haber sido considerado por los traductores y matemáticos europeos como la aproximación más cercana a este símbolo de lo desconocido.
x
es un nombre de variable común en matemáticas. xs
es la forma plural de x
(¿obtenerlo?). En la coincidencia de patrón de lista, x
es un elemento y xs
es (generalmente) varios.