Я читал модель "Дипломатия" для долота. У меня был вопрос относительно философии дизайна, стоящей за этим. Как я понимаю, ленивая оценка Scala используется для регистрации некоторой информации времени компиляции, которую можно принудительно оценить во время разработки перед генерацией FIRRTL для выполнения мета-операций, таких как согласование параметров.
Мой вопрос: это единственный подход? Возможно ли создать прокси-объект в Scala, который регистрирует эти мета-свойства и оценивает их при вызове определенной функции? Затем эту функцию можно вызвать перед оценкой, чтобы выполнить согласование.
Причина, по которой я спрашиваю об этом, заключается в том, что я постепенно изучаю Scala и Chisel, поэтому хотел бы понять, как строить абстракции как можно более постепенно, без как можно более простых примитивов.