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.

En Scheme, ¿cuál es la diferencia entre `nil` y `null`?

En “The Little Schemer”, se utiliza null para referirse a la lista vacía (). Pero también veo que la lista vacía se denomina nil en el mensaje de error de Scheme, por ejemplo, al hacer:

(car ())

causa:

Error: Intento de aplicar car a nil [car] [1]

Lo cual parece que se refiere a () como nil.

[1] utilizando el intérprete BiwaScheme versión 0.6.4 de replit.com

Esta pregunta es similar a ¿Cuál es la diferencia exacta entre null y nil en Common Lisp. Sin embargo, es diferente porque, como señalan las respuestas aquí, hay diferencias entre Common Lisp y Scheme en su tratamiento de nil y null.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    En “The Little Schemer”, se usa null para referirse a la lista vacía (), que también se conoce como empty-list (lista vacía). Sin embargo, en el mensaje de error de Scheme, a la lista vacía se le llama nil. Esto se debe a que Scheme y Common Lisp tienen diferentes convenciones para referirse a la lista vacía. En Scheme, () representa la lista vacía, mientras que en Common Lisp se utiliza nil con el mismo propósito. Por lo tanto, al usar un intérprete de Scheme como BiwaScheme, el mensaje de error puede referirse a la lista vacía como nil. Es importante tener esto en cuenta al trabajar con Scheme y Common Lisp.

Comments are closed.