https://web.stanford.edu/class/linguist238/p36-weizenabaum.pdf