4 ms·
Sure, if its within the same ecosystem - at which point the diff is really just syntax. (Whats Python's ecosystem anyway?) But I doubt a moderately complex arc
by noir-york 10y ago
Sure, if its within the same ecosystem - at which point the diff is really just syntax. (Whats Python's ecosystem anyway?)
But I doubt a moderately complex architecture can live within just one ecosystem. We use PHP, C, Lua (to script the C), Go and Python (being phased out in favour of Go) because different workloads/problems have different requirements.
- crdoconnor 10y ago>at which point the diff is really just syntax. If you think the difference between F# and C# is just syntax then you have little understanding of either language. >Whats Python's ecosystem anyway? Everything on pypi (django/flask/pandas/etc.). It doesn't have another language targeting the VM like C#/F#/Scala/Java if that's what you mean, and there won't be a paradox among programmers of that ecosystem like there is for .NET / Java. >But I doubt a moderately complex architecture can live within just one ecosystem. We use PHP, C, Lua (to script the C), Go and Python (being phased out in favour of Go) That mix of technologies suggests that you have a legacy problem (e.g. a CMS based on wordpress you can't get rid of) and technology choices that are fashion conscious (migrating python to go). I suggest reading Mozilla's story ("from python to go and back again"): https://docs.google.com/presentation/d/1LO_WI3N-3p2Wp9PDWyv5B6EGFZ8XTOTNJ7Hd40WOUHo/mobilepresent?pli=1&slide=id.g70b0035b2_1_168 https://docs.google.com/presentation/d/1LO_WI3N-3p2Wp9PDWyv5...
- noir-york 10y ago> If you think the difference between F# and C# is just syntax then you have little understanding of either language. Little understanding of F# maybe. C# - not after a decade using it! Both languages target the .Net VM - what you can do with one you can achieve, perhaps more clumsily, in the other. My point still stands: the difference between the two ultimately comes down to syntax. And its not like C# is not getting functional (LINQ) > That mix of technologies suggests that you have a legacy problem Wrong assumption. Don't assume that everyone write web apps. We're in network security and need C for high performance DNS server code. PHP is to serve our admin dashboard (not Wordpress!). PHP is fast, and works, and there are programmers for it. The transition Python to Go is an example of business considerations taking precedence over "fashion". Python was great in the early days when shipping and iterating fast mattered and we had a small customer base. But we always knew we'd outgrow it - Go is a great language: fast, concurrent, parallel and more disciplined. We need all these now that we have large customers and a growing customer base. Business needs drove the move; I am very pragmatic about these things. C++ programmers "get" Go, the transition is fast. Ironically, I find your comment makes assumptions that are "fashion conscious" - PHP is not some legacy language whose only reason to live is Wordpress. C/C++ is a great language(s) and perfect for certain tasks, but Go is increasingly encroaching on its turf. In future we may rewrite some of the C code in Go - the lack of control over GC/GC pauses/freeing memory is the main obstacle to using Go for certain performance critical tasks.
- tpetricek 10y agoBoth Assembler and Haskell target native code - what you can do with one you can achieve, perhaps more clumsily, in the other. The difference between the two ultimately comes down to syntax.
- noir-york 10y agoI get the sarcasm but yes that's true for Turing complete language. Maybe my meaning was not conveyed clearly enough; I was speaking within the context of the thread which was narrower. In practical terms, F# and C# both target the .Net VM. A more apt comparison would be between, say, PHP and C#, or Prolog and C. All Turing complete, but its not practical to use one instead of the other for particular tasks; its highly impractical to write a device driver in PHP.