es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo imprimir mostrando la estructura compartida?

Como ejemplo, las dos expresiones evaluadas a continuación tienen la misma representación “impresa”, es decir, ((A) (A)) , pero tienen una estructura interna muy diferente. Aquí la estructura es “compartida”:

* (let ((item '(a))) (list item item))
((A) (A))

Aquí cada (a) es una entidad distinta:

* '((a) (a))
((A) (A))

Específicamente, el valor de la primera expresión es una lista de dos elementos donde los dos elementos son idénticos; el valor de la segunda expresión también es una lista de dos elementos, pero sus dos elementos son distintos (es decir, no idénticos).

¿Cómo puedo representar estos dos valores de manera que haga más aparente esta diferencia en sus estructuras internas?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Las dos expresiones evaluadas anteriormente pueden ser representadas de tal manera que la diferencia en sus estructuras internas se vuelva más evidente como sigue:

    • (let ((item '(a))) (list item item)): [(A), (A)]
    • '((a) (a)): [[A], [A]]

Comments are closed.