"If you’ve ever used PyTorch, TensorFlow, or any of the other big machine learning libraries, they all support this feature, but only if you’re using their particular library specific operations. What’s more, working with gradients in these Python libraries is not as lightweight, transparent, or well integrated as it is in plain Swift."
This reminds me of concurrency and transactional memory in Clojure. You can have all of those things at a library level, but building it into the language... Well it kinda FORCES you to deal with them, for good and ill.