Voglio essere in grado di catturare fatti come Bob was born in 2000e Bill's birthday is May 7th.
In entrambi gli esempi conosciamo solo una parte della data di nascita della persona. In un caso conosciamo solo l'anno; nell'altro caso conosciamo il mese e il giorno, ma non l'anno.
Come acquisisco queste informazioni?
Alcuni esempi di come potrebbe funzionare:
Immagina una libreria come datetime che ha permesso a None nei campi di rappresentare incognite. Potrei avere un codice come il seguente:
date_a = date(2000, 5, None)
date_b = date(2000, 6, None)
difference = date_b - date_a
assert difference.min.days == 1
assert difference.max.days == 60 # Or something close to 60.
assert equal(date_a, date_b) == False
date_c = date(2000, 5, None)
assert equal(date_a, date_c) == Maybe
Questo è solo un esempio di come potrebbe comportarsi. Non voglio necessariamente questo comportamento preciso.