4 ms·
Eh, they're just a lot of ways to say "path dependence". Scripting languages are basically the same exact technology with respect to each other. In the alternat
by qsort 4y ago
Eh, they're just a lot of ways to say "path dependence". Scripting languages are basically the same exact technology with respect to each other. In the alternate universe where numpy and scipy are, let's say, numruby and sciruby, wouldn't we be here asking why Ruby keeps growing?
That's not a sales pitch for python, it's a sales pitch for the concept of a scripting language; it's like saying "you should really buy a Ford, it comes with four wheels".
- rob74 4y agoI admit I have a blind spot for Python, because I use PHP in my day job, so when I need to do some scripting, I mostly use PHP. But admittedly Python is a lot friendlier than some alternatives (Perl, Shell scripts etc.), and more universal than others (PHP being mostly used for web dev), so that's why people choosing a scripting language for their tool/library tend to choose Python.
- qsort 4y agoI use Python all the time both for my personal stuff and for some side-projects at work, so this isn't a dunk on Python, but honestly it feels like a circular thing: it's popular because it's popular. I wouldn't say it's friendlier than the alternatives, Perl and Shell scripts sure, but not when compared to Javascript, Ruby or Lua. Now, if you're talking about libraries, support, etc. then sure, Python wins hands down, but that doesn't make it a better language in itself. I'd say Ruby and Lua are a little bit better as languages. But then again, I don't care much for the language in itself, so Python is enough for most of my use cases.
- otherme123 4y agoI read "it's popular because it's friendlier". PHP, Javascript or R are popular, but are not friendlier. I find their error messages way worse for the beginner, when you need it more. Third party code is too "clever" for the beginner to read and learn, because it seems to be two languages: the one you are learning in the tutorials, and the other idiom that is used in the serious libraries. As a beginner you are hit with this feeling that you are far, far away from writting an useful thing. In my job I've seen some beginners starting with R, and quickly hating it because they don't feel they can do much on their own, but copy-pasting and then modifying from the examples and the tutorials. And it the changes go too far, everything collapses with cryptic errors. When you show them Python as an alternative, pointing that they shouldn't use it over R for statistics and graphics, they like that they can build ideas from the scratch. That beginner is hooked for life.
- artagnon 4y agoI think Lua was always seen as a bit obscure, and not enough people invested in the language to write useful utilities. It has a solid C foreign function interface, and the compiler is quite fast, which leaves me puzzled about why it never gained traction. I think it's an embedded scripting language in the majority of use cases (e.g. NeoVim, LuaLaTeX, scripting in some game engines). The story of Ruby is altogether different: they made the fatal mistake of not defining a C foreign function interface in the standard, otherwise I imagine we'd be seeing numerical computation and ML libraries with a Ruby interface today. Still, Ruby lives on in Metasploit, and in Sorbet and Crystal.
- sethrin 4y ago> The story of Ruby is altogether different: they made the fatal mistake of not defining a C foreign function interface in the standard, otherwise I imagine we'd be seeing numerical computation and ML libraries with a Ruby interface today. This to me is extremely plausible, and sad.
- yamtaddle 4y ago> I think Lua was always seen as a bit obscure, and not enough people invested in the language to write useful utilities. It has a solid C foreign function interface, and the compiler is quite fast, which leaves me puzzled about why it never gained traction. I think it's an embedded scripting language in the majority of use cases (e.g. NeoVim, LuaLaTeX, scripting in some game engines). - Lua's standard library is so weak that it makes most other batteries-not-included languages look like they have large, robust, and helpful standard libraries. - It's got a bit of the quirkiness and gotcha-ability of JavaScript but without its being a language that's impossible to avoid due to capture of a mega-popular platform, which is what propelled JavaScript to ubiquity despite its being kinda shit and unpleasant to work with. - Tooling's not as good as many other languages. (FWIW sometimes I write Lua regardless, because it's the right tool for the job)
- ramblerman 4y agoLuck of libraries and initial userbase are certainly involved in success, but not all scripting languages are equal. I mean we could add bash to that list then. In fact I'd argue that python enjoying the success it has, despite probably the worst handling of a version bump in any language (2->3), is a testament to its popularity.
- optimalsolver 4y agoThe worst version bump ever seen was Perl 6 which literally became another language (Raku).
- deleted 4y ago[deleted]
- Macha 4y agoWhy did Rails get outcompeted by newer (and also some older) alternatives in the long run, when numpy and scipy did not? Ruby would have a much bigger market share these days if library path dependence was that powerful.
- psychoslave 4y ago> Why did Rails get outcompeted by newer (and also some older) alternatives in the long run, when numpy and scipy did not? Chiefly, because big money corp invested massively elsewhere. Also by now it’s easier to find developers who are cheaper and already (only can) use javascript/python? I think that actual technical merits are dwarfed compared to other forces at stake here.
- rch 4y agoI think that experiment is taking shape with Elixir: https://github.com/elixir-nx/nx https://github.com/elixir-nx/nx I don't see how it could ever overtake Python, but it could establish itself as a viable niche alternative.