As a linguist, I'd like to point out that using the word fuck is very different from using the name Brainfuck.

The name Brainfuck has a unique referent: it refers only to the programming language of that name. The word fuck does not have such a unique reference – it can be used to refer to all sorts of things, and while the associated concept may be considered to be a rather integral part of human existence, the connotations of that word make it inappropriate for formal discourse for many, if not most speakers.

The crucial point is, however, that there is no conceptual overlap between the two. Brainfuck, when used as the name of a programming language, means something totally different from fuck, and there is no overlap whatsoever in the potential sets of referents of the two words. At the same time, it is of course possible to use the word brainfuck with a meaning that is related more to fuck than to Brainfuck, as in Stop trying to brainfuck me. Here, the speaker is clearly evoking the meaning of fucking, and not the meaning of "a programming language that is intentionally so strange that it brainfucks its users".

So, as an answer to your question: use by all means exactly those linguistic expressions that their inventors chose as names for their programming languages. The -fuck in Brainfuck does not mean fuck. Therefore, there is no need to censor it.

This is, unless the editor of the journal you're submitting your paper to explicitly refuses to publish it while the letter sequences fuck occur in the names.