Да, мне пришлось потратить кучу времени в исходном коде, чтобы выяснить, что происходит. На самом деле, это описывает мой опыт работы с Erlang. Это заставило меня создать JSON, который мне нужен. Вот быстрый пример.
ERL :: {struct, [{strKey, <<"strVal">>}, {intKey, 10}, {arrayKey, [1, 2, 3]}]}
JSON :: {strKey:"strVal", intKey:10, arrayKey:[1, 2, 3]}
Итак, в этом примере вы можете увидеть, как создавать объекты (которые mochijson2 хочет, чтобы вы называли структуры), строки, целые числа и массивы. Удачи!