Implemente um sistema reativo básico.
A programação reativa é um paradigma de programação que se concentra em como os valores são calculados em termos uns dos outros, de modo que a mudança de um valor se propague automaticamente para os outros, como em uma planilha.
Implemente um sistema reativo básico com células que têm valores que podem ser definidos (células de "entrada") e células com valores calculados em termos de outras células (células de "cálculo"). Implemente as atualizações de modo que, quando um valor de entrada mudar, os valores se propaguem até o sistema alcançar um novo estado estável.
Além disso, as células de cálculo devem permitir registrar callbacks de notificação de mudança. Chame os callbacks de uma célula quando o valor dela, em um novo estado estável, tiver mudado em relação ao estado estável anterior.
Observação: para os fins deste exercício, você pode assumir que todos os objetos Cell são criados por uma das suas funções Create*().
Crie sua conta no Exercism para aprender e dominar Go com 34 conceitos165 exercícios e mentoria humana de verdade, tudo de graça.