¿Por qué no puedo usar una lista como clave dict en python?

Estoy un poco confundido acerca de qué se puede / no se puede usar como clave para un dict python.

dicked = {}
dicked[None] = 'foo'     # None ok
dicked[(1,3)] = 'baz'    # tuple ok
import sys
dicked[sys] = 'bar'      # wow, even a module is ok !
dicked[(1,[3])] = 'qux'  # oops, not allowed

Así que una tupla es un tipo inmutable, pero si oculto una lista dentro de ella, entonces no puede ser una clave ... ¿no podría ocultar fácilmente una lista dentro de un módulo?

Tenía una vaga idea de que la clave tenía que ser "hashable" pero solo voy a admitir mi propia ignorancia sobre los detalles técnicos; No sé lo que realmente está pasando aquí. ¿Qué saldría mal si intentara usar listas como claves, con el hash como, por ejemplo, su ubicación de memoria?

Respuestas a la pregunta(9)

Su respuesta a la pregunta