We use the Strategy pattern all the time (some knowingly and some by some sort of fluke).
Here is a nice a way to implement Strategy without the overhead of interfaces. It’s a bit anti-OO, but is useful when there is no concrete need to create a new type just to perform some logic.