An assignment for a class is to describe in one or two sentences what this line means and does
:(){ :|:& };:
From messing around with it it seems like the only part of it that works on its own is the :|:&
part which displays a number and then displays an extra line after every future command entered.
Just running the line creates a constant stream of "bash fork retry resource temporarily unavailable" running as a background process.
Running it as root displayed the number again and then made redhat freeze.