You could use open()-for-IPC to accomplish what you say you need to do, but
you already have the code that uses Mail::SpamAssassin's "check_message_text" to perform that function - why would you want to call external code ?
Profanity is the one language all programmers know best.
Using Mail::SpamAssassin is very expensive on memory usage. Our server is getting hammered on Mondays when we get the most email volume... gets *very* slow.