Al crear un cliente para una API web en C #, me encontré con un problema relacionado nullcon un valor en el que representaría dos cosas diferentes:
- nada , por ejemplo, un
foopuede o no tener unbar - desconocido : por defecto, la respuesta API solo incluye un subconjunto de propiedades, debe indicar qué propiedades adicionales desea. Tan desconocido significa que la propiedad no se solicitó a la API.
Después de algunas búsquedas, descubrí el tipo Quizás (u Opción), cómo se usa en lenguajes funcionales y cómo "resuelve" problemas de anulación de referencia al obligar al usuario a pensar en la posible ausencia de un valor. Sin embargo, todos los recursos que encontré hablaron de reemplazar nulo con Quizás . Encontré algunas menciones de lógica de tres valores , pero no lo entiendo completamente y la mayoría de las veces su mención fue en el contexto de "es algo malo".
Ahora me pregunto si tiene sentido tener tanto el concepto de nulo como el de Quizás , para representar lo desconocido y nada, respectivamente. ¿Es esta la lógica de tres valores sobre la que leí, o tiene otro nombre? ¿O es la forma prevista de anidar un tal vez en un tal vez?
M M xy M xdebería tener la misma semántica.
M (M x)y M xdebería tener la misma semántica". Tomemos M = Listpor ejemplo: las listas de listas no son lo mismo que las listas. Cuando Mes una mónada, hay una transformación (es decir, la multiplicación de la mónada) a partir M (M x)de la M xcual se explica la relación entre ellos, pero no tienen "la misma semántica".
null. Es una idea completamente rota.