Acabo de empezar a aprender Common Lisp y rápidamente me enamoré de él, y acabo de pasar al sistema de tipos. Parece que estoy desarrollando una afición particular por la programación aplicativa.Programación aplicable y tipos comunes de ceceo
Según tengo entendido, en CL las cadenas y listas son ambas secuencias, pero no parece haber ninguna función estándar para mapear sobre una secuencia, solo listas. Puedo ver por qué se les proporcionaría listas, con ellos siendo el tipo de datos fundamental y todo, pero ¿por qué no estaba diseñado para trabajar con secuencias? Como son un tipo más general, parecería más útil orientar las funciones aplicativas a ellas en lugar de a las listas. ¿O estoy completamente mal entendiendo cómo funciona?
Editar:
lo que estaba sintiendo particularmente confundido sobre era la forma en que las secuencias de la abstracción - - y enumera - un problema de implementación - parecen estar confuso, en la CL. El consenso parece ser que esto es por razones históricas; lisp ha existido por tanto tiempo que puedes trazar el desarrollo de prácticas de ingeniería de software a través de sus funciones y macros; qué funciones se aplican a las secuencias y cuáles a las listas parece arbitrario a primera vista porque CL tiene una mezcla de funciones de abstracción previa a la secuencia que operan solo en listas y funciones que hacen lo mismo de forma más general en las secuencias. Como alguien que recién está aprendiendo CL por el momento, creo que sería útil que los autores introdujeran las secuencias primero como la abstracción más limpia, y luego las compraran en listas como la implementación más fundamental de esa abstracción. Las listas todavía se necesitarían como sintaxis, por supuesto, pero para el momento en que sea necesario afirmar esto explícitamente, muchos lectores habrían resuelto esto por sí mismos, lo cual sería todo un impulso para el ego al comenzar.
CUENTA, ENCUENTRE, ELIMINE el trabajo fino sobre las secuencias. Verifique el diccionario de secuencias del estándar ANSI CL. –
Bien, bien, ¿qué sabías? Hablé un poco delante de mí allí. ¡Gracias! –
Puede haber hablado antes que usted, pero me dio la respuesta que necesitaba. Lo que me confundió fue por qué la abstracción entre secuencias como el caso general y las listas como la implementación parecía tan confusa en CL; ahora sé que es por razones históricas. ¡Gracias! –