A Markov chain chatterbot for slack
In the late '90s, I ran across the concept of using a Markov chain as the basis for a chatterbot. This was around the same time as the rise of instant messaging clients on the internet, and in the intervening years I've written variations of the idea for a variety of online communication tools: AIM, Twitter, LambdaMoo, and now Slack.
I love the simplicity of the algorithm: there's nothing hard-coded in it about language, no special words that do special things, and no canned responses. You say something to Neil, he learns some new words and what order they come in, and he gives you a sentence back. He'll never pass Turing Kindergarten, but he will give you some silly quotes.
In the words of Neil: Corned beef monkey monkey butt!