Existe uma razão para que poucos pacotes pareçam usar filas de transações ( tq-enqueue
etc.) para comunicação com processos externos? A maioria dos pacotes que eu analisei parece preferir o mecanismo de filtro regular.
Existe uma razão para que poucos pacotes pareçam usar filas de transações ( tq-enqueue
etc.) para comunicação com processos externos? A maioria dos pacotes que eu analisei parece preferir o mecanismo de filtro regular.
Respostas:
Uma coisa a saber sobre o Emacs é que existem muitas bibliotecas obscuras que o acompanham. E, longe de ser uma esquisitice histórica, mais pessoas entram na árvore o tempo todo. Muitas vezes, estes foram escritos para um único uso.
Não há uma única razão para que essas coisas não sejam reutilizadas. Talvez não se encaixasse em alguns usos, talvez alguns autores não soubessem, etc. No seu caso, tq.el
a resposta é a mesma - use-a se for um bom ajuste para o seu problema. Para mim, parece um pouco sub-geral; por exemplo, não há como enfileirar uma regexp sem também enviar uma string. Também é um pouco antiquado com os argumentos de "fechamento"; estes são desnecessários agora que o Emacs tem ligação lexical.
Há também alguma duplicação de biblioteca no Emacs. Assim, por exemplo, existem ambos ewoc.el
e tabulated-list.el
, duas maneiras diferentes de realizar uma espécie de tarefa MVC-ish.