I think, for me, becoming enamored by a programming language requires a sense of empowerment by that language. "Now I can build all the things!" It also requires a certain sense of conceptual unity; it can't be too messy. It also cannot be too low level: it needs the ability to do abstraction. And I need to be actually using it a lot for real world tasks; it can't just be for toy problems. In my developer life there are two languages I have become truly enamored by. Python in 1998 and Rust, a...