3 ms·
The language itself is far simpler (fewer built-in basic complex data types, composition over inheritance, no overloading, no slots) but still batteries-include
by robmccoll 11y ago
The language itself is far simpler (fewer built-in basic complex data types, composition over inheritance, no overloading, no slots) but still batteries-included w.r.t. the standard library. You'll likely get a performance improvement unless you are writing some really zany code. Static types and the compiler will actually make your life much easier when dealing with larger code bases (no more wondering what type a parameter is, if it compiles there is a much better chance that it will just work, fewer worries about unhandled runtime conditions). Less magic (no decorators or deep class hierarchies) which means its easier to trace control flow in someone else's code. Verbose, but still very clean error handling. IMHO, the import system is pretty broken and awful, but importing someone else's packages straight off of github is still much better than pypi / wheelhouses. Compiled static binaries by default means that building somewhere and then shipping a binary is quite easy.
- bduerst 11y agoThanks - that's what I was looking for. I'll read more about the deep class hierarchies to see if it would be a problem. Shame to hear about the importing, I kind of like Python's importing (sans the circular dings).
- robmccoll 11y agoSure - the import thing really just depends on what you're doing and how you use imports. Personally I found it to be really cool at first, but later realized it's more of an 80% solution that makes great demos but runs into practical problems (not flexible, tools around versioning or and relative paths are hackish). With hierarchies, you can mostly implement them, but they language pushes you away from them, which is really a feature.