apart from anything else it has a really beautiful object system. I feel like racket and ocaml are two languages where the object system doesn't get enough love.