3 ms·
I say all the following as an avowed Rubyist 1) Computational Linguistics libraries 2) Machine Learning libraries 3) Still one of the blessed languages inter
by igravious 9y ago
I say all the following as an avowed Rubyist
1) Computational Linguistics libraries
2) Machine Learning libraries
3) Still one of the blessed languages internal to Google? and BFDL was employed for a while there
4) Jupyter Notebooks
5) Coder Dojo approved language
I used to think that all dynamic languages (Ruby/Python/Javascript/Perl/…) were of a par but I have to admit that Python has an awful lot of mindshare and it's beginning to exhibit strong network effects.
- aphextron 9y ago>I used to think that all dynamic languages (Ruby/Python/Javascript/Perl/…) were of a par but I have to admit that Python has an awful lot of mindshare and it's beginning to exhibit strong network effects. Ruby is a wonderful language with a really unfortunate standard implementation. It's easily 5 times slower than Node at practically anything, which is sad because Ruby is infinitely better than Javascript. I really think this is what it comes down to and why Rails has been dying off.
- goatlover 9y agoAgreed on Ruby as a language, but Node also has the advantage of being isomorphic. It's hard to beat JS when it's the browser language, and then you provide a really nice server side platform for it. Plus there has been a reaction to Rails size and complexity. I kind of hate that everyone thinks of Rails when Ruby is mentioned. But I thought Sinatra was a really nice microframework.
- flavio81 9y ago> but Node also has the advantage of being isomorphic. It's hard to beat JS when it's the browser language This has repeated often but so far I haven't found a really convincing argument. All my friends, who know C, C++, C#, Java (and other languages) had no problem in picking up Javascript/ES7 for programming the browser using whatever you need. I think this argument was exciting for the front-end developers who wanted to try doing things on the server but couldn't be bothered into learning a new language. So now with Node.js they are happy and satisfied, until they realize that the problem is not the language; the problem is that server programming is a different matter altogether, no matter what the language is.
- igravious 9y agoAll that beautiful meta-programming flexibility has come at a price. The research projects sponsored by the likes of IBM and Oracle to give Ruby a much needed speed boost are very slow in the offing – it feels like V8 was developed overnight in comparison. Aesthetically I think Ruby beats Python/Javascript/Perl but unfortunately that's not enough to move the needle on the dial. It'll be interesting to see whether Python or Ruby or Ruby get to WebAssembly first – I'm correct in saying that none has of yet, yes?
- goatlover 9y agoCommon Lisp found a way to be performant. Is Ruby really that much harder to optimize than other dynamic languages? JS had the advantage that there was strong incentive to make it fast in the browser, and V8 had Lars Bak working on it.
- igravious 9y agoApologies to everyone for turning this into a Ruby thing on a Python topic. You can check out the Oracle Labs code and progress of Graal/TruffleRuby here: https://github.com/graalvm/truffleruby https://github.com/graalvm/truffleruby Relevant page: https://labs.oracle.com/pls/apex/f?p=labs:49:::::P49_PROJECT_ID:130 https://labs.oracle.com/pls/apex/f?p=labs:49:::::P49_PROJECT... And IBM's Ruby+OMR code and progress is here: https://github.com/rubyomr-preview/ruby https://github.com/rubyomr-preview/ruby Relevant post: https://developer.ibm.com/open/2017/03/01/ruby-omr-jit-compiler-whats-next/ https://developer.ibm.com/open/2017/03/01/ruby-omr-jit-compi... Can Matz somehow in the nicest possible way kidnap Lars Bak and pay him in gummy bears or something?
- flavio81 9y ago> All that beautiful meta-programming flexibility has come at a price Scheme, Common Lisp, and Julia all have good metaprogramming facilities (i'd argue, for Scheme & CL, way beyond what Ruby offers), and they are highly performant, indeed much faster than Ruby, Python (even under Jython) and Javascript under V8.
- cutler 9y ago
- jhbadger 9y agoThat's why I have high hopes for Crystal. Yes, it isn't exactly Ruby, but it is a compiled language that has a very Ruby-ish feel.
- cutler 9y agoRuby 2.4 and Python 3.6 are the same speed unless you're using a super-optimised library such as numpy. In fact, for string parsing Ruby is faster than Python due to its superior regex implementation. PHP 7, on the other hand, is much faster than Python or Ruby. I don't know how Zend pulled it off.
- flavio81 9y ago> I used to think that all dynamic languages (Ruby/Python/Javascript/Perl/…) were of a par Try Lua, Common Lisp, Julia, and Racket, for a surprise.