You two are both doing the "ATM machine" thing. (PAM = Pluggable Authentication Module)
"Written as a PAM" sure feels wrong on the lips, though.
"Written as a PAM" sure feels wrong on the lips, though.
No matter what, it's not nearly as bad as "The Los Angeles Angels" :-)
You then write a module for the PAM library, so it makes the most sense to call it a "PAM Module", even if there is some redundancy in the acronym.
English isn't a programming language; it's OK if some of the things expressed commonly by natural language speakers aren't perfectly regular or logical, as long as everyone understands them. In this case, "PAM module" is totally understandable, and less ambiguous than just "PAM".