Although brainfuck is basically useless, it isn't quite so crashingly useless as people usually say. Some small tasks can be done fairly concisely. (Some of these are fairly UNIX-specific.) Do nothing, terminate successfully. (Also called "true".) (This is the shortest brainfuck quine as well.) +[>.+<] Real random byte generator. (Send output to file, stop program after a while, and take the last byte.) +++++++. Beep. (Small binary data files are easy to make with brainfuck and a pipe, too.) ,[.[-],] Copy input to output. With a pipe, a no-frills way to make text files. (Unlike most programs assuming EOF->0, this needed modification before it would work with EOF->"no change" as well.) (remove the . to get an input-devourer.) >,[>,]<[.<] Reverse input. unmatched [. A Kimian quine, for my Sun compiler. ,[---------[-[++++++++++.[-]]],] Strip tabs and linefeeds. ++++[>++++++++<-],[[>+.-<-]>.<,] Show ASCII values of input in unary, separated by spaces. (Useful for checking your implementation's newline behavior on input.) ++++++++++[>++++++++++>+<<-]>[>.<-] Clear the screen. +++++++++++[>++++++>+<<-]>+.>-[.[-],] Play "Prisoner's Dilemma" using the robust "Tit for Tat" strategy. +++++++++++[>++++++>+<<-]>++.>-.>,[,[-]<<.>.>,] ...and using the not-so-robust "All D" strategy. +++++[>+++++++++<-],[[>--.++>+<<-]>+.->[<.>-]<<,] Translate text to brainfuck that prints it. >>,[>>,]<<[[-<+<]>[>[>>]<[.[-]<[[>>+<<-]<]>>]>]<<] Sort bytes in ascending order. (These last two are solutions from Brainfuck Golf.) >,[>>>++++++++[<[<++>-]<+[>+<-]<-[-[-<]>]>[-<]<,>>>-]<.[-]<<] Translate "binary" to ASCII, e.g. "0110100001101001" to "hi". +++++[>+++++<-]>[>++>++++<<-]>-->-<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>] A novel way of moving to the 9999th cell. >++++[>++++++<-]>-[[<+++++>>+<-]>-]<<[<]>>>>- -.<<<-.>>>-.<.<.>---.<<+++.>>>++.<<---.[>]<<. Print "brainfuck" with a linefeed. >>++>+<[[>>]+>>+[-[++++++[>+++++++>+<<-]>-.>[< ------>-]++<<]<[>>[-]]>[>[-<<]+<[<+<]]+<<]>>] Version of random.b that outputs printable ASCII: "11011100..." ++++++++[>++++[>++>+++>+++>+<<<<-]>+>->+>>+[<]<-]>>.> >---.+++++++..+++.>.<<-.>.+++.------.--------.>+.>++. Print "Hello World!" with a linefeed. >++++++++++>>+<+[[+++++[>++++++++<-]>.<++++++[>--------<-]+<<]>.>[->[ <++>-[<++>-[<++>-[<++>-[<-------->>[-]++<-[<++>-]]]]]]<[>+<-]+>>]<<] Output powers of two, in decimal. (Doesn't terminate.) Daniel B Cristofani (cristofdathevanetdotcom) http://www.hevanet.com/cristofd/brainfuck/