Вы можете сделать следующее:
(declare a b)
(def a [1 #'b])
(def b [#'a 2])
@(a 1)
=> [#'user/a 2]
Обратите внимание, что #'
- это макрос для чтения для ссылки на переменную.
Я все еще не совсем уверен, почему вы хотите сделать это, хотя ..... пытаться сделать переменные взаимозависимыми, как это, кажется мне довольно неприятным запахом кода. Вполне вероятно, что все, что вы пытаетесь сделать, будет лучше всего решено с помощью другого подхода.
EDIT
С дополнительным комментарием о том, что проблема связана с тем, что разные типы сущностей ссылаются друг на друга, я думаю, что лучший подход - это карта с ключевыми словами, например,
(def my-model
{:a
{:name "Entity A"
:references [:b]}
:b
{:name "Entity B"
:references [:a]}}