5 ms·
> Swift lets you write code that's as concise as Python while still being fast, > (TensorFlow is actually mostly C++, which makes it difficult for a Python dev
by ljm 6y ago
> Swift lets you write code that's as concise as Python while still being fast,
> (TensorFlow is actually mostly C++, which makes it difficult for a Python developer to debug.)
To be honest, if I had to choose between Python and Swift I'd still choose Python. Swift is a nice evolution from Obj-C and all but it is nowhere near as simple as Python, or Ruby, or PHP, or Javascript, or Kotlin. And Apple's documentation of these things is pretty woeful at the best of times lately.
I also disagree with the pitch, is what I'm saying.
- aplummer 6y agoTo say that Swift is "nowhere near as simple" as Javascript or Kotlin is a very strange opinion to me, and I have experience with all 3. Simple as in syntax, memory management, or in what regard? I can't think of a single example where Swift is not equivalent or better. Do you have the same criticism of Scala?
- ljm 6y agoI do. Scala is insanely complicated once you inherit a codebase full of implicits and custom operators.
- The_rationalist 6y agoSwift has no traced garbage collector which means you cannot represent circular data structure/references. Also swift support for interfaces (protocol) is sub-par with today standards
- andrekandre 6y ago> Also swift support for interfaces (protocol) is sub-par with today standards interesting, what could be added/changed to make it better?
- The_rationalist 6y agoNo support for default implementation methods. No support for generics in protocol. There might be workarounds but for a newcomer, this is a red flag of reinventing a basic and universal construct (interfaces) in a sub-par one, this show a dangerous mentality from the swift vm devs, what else did they wrongfully reinvent in a sub-par way?
- liuliu 6y agoThere is support for default implementation method in protocol for a while now. Generics are supported through associated types.
- aplummer 6y agoAs the other commenter pointed out, default implementations (with genetic constraints!) are supported, they actually my favourite swift feature.
- skohan 6y agoI think considering swift as merely an evolution of obj-c is a drastic underestimation. Swift is a very nice language in its own right. Having spent time with most of the languages you've mentioned, while the learning curve might be a bit steeper, I think Swift is much easier to manage a medium or large project with than any of those options with the exception of maybe Kotlin, and personally I find some of the design choices a bit better in Swift than in Kotlin.