Converte termos erlang em string ou decodifique erlang binário

Tenho um programa erlang que gera dados. Esses dados precisam ser transferidos via udp para um programa não-erlang para processamento adicional. Eu já tenho essa parte funcionando - enviando os dados via udp e recebendo no outro lado não erlang.

Aqui está o problema. Os dados (termos erlang, como tuplas que contêm listas) não parecem passar "como estão" (ou seja, não posso simplesmente enviar termos erlang arbitrários). Aparentemente, ele precisa ser convertido em texto ou em binário primeiro. Converter em binário parece fácil com um bif que encontrei. O problema é que o gobbledygook binário sai do outro lado e não conheço nenhuma maneira fácil de decodificá-lo (o outro lado é não erlang).

Barring alguém me dizendo uma maneira fácil de decodificar o gobbledygook binário do outro lado, eu gostaria que os dados fossem enviados como uma representação simplista de string dos termos - por exemplo, uma tupla como esta:

{[1,2,3],[4,5,6]}

enviado assim:

"{[1,2,3],[4,5,6]}"

Eu não vi nenhum bif como, por exemplo, "convert_term_to_ascii / 1" etc. Eu sei que poderia digitalizá-lo e enviar representações de token dos termos, mas não quero fazer isso - decodificar que do outro lado é apenas uma dor com a qual não quero lida

Sei que não sou a primeira, segunda ou terceira pessoa a ter esse problema. Tem que ser bastante comum. Como é normalmente tratado?

Alguém pode me indicar algum recurso que me mostre como 1) converter gobbledygook binário em ascii (necessário no lado não erlang) ou 2) converter diretamente termos em uma string (necessário no lado erlang)?

Ou, diga-me como estou errado e como realmente deveria estar fazendo isso?

Obrigado

questionAnswers(4)

yourAnswerToTheQuestion