Recentemente stavo considerando che a volte diversi oggetti dipendono l'uno dall'altro (ad esempio se contengono riferimenti ciclici) e quindi sarebbe utile crearli come parte di un'operazione atomica che assicura che, dopo la costruzione, i nuovi oggetti soddisfino qualche vincolo collettivo.
Per fare ciò si possono avere costruttori che possono creare più di un oggetto. Il programmatore inserirà quindi in un singolo costruttore tutto il codice assicurando che, una volta creati gli oggetti o 1 , ..., o n , soddisfino tutti i vincoli richiesti ( ad es. tutti i collegamenti tra i nuovi oggetti sono già a posto). Ho inventato il termine costruttori collettivi me stesso perché non ho mai sentito parlare di una simile funzionalità, ma potrebbe esistere un nome accettato per questo concetto.
Quindi, esiste un linguaggio di programmazione che supporti questo tipo di costruttori? Se no, l'idea è già stata provata?