4 ms·
I believe the Ruby community is very pro-Perl. I enjoyed Perl myself and Ruby seems to have a lot of the same soul to it. I usually say Ruby is everything I l
by ludicast 16y ago
I believe the Ruby community is very pro-Perl. I enjoyed Perl myself and Ruby seems to have a lot of the same soul to it.
I usually say Ruby is everything I loved about Perl with none of what I disliked/hated.
- sabat 16y agoI'm an old Perl hacker but do most of my work in Ruby these days -- and love it. I'll always have a soft spot for Perl, and will never forget how it helped build the Internet. But to me, Ruby makes Perl look like Java.
- rbrcurtis 16y agoCan you explain the "makes perl look like java" comment? how does perl look like java?
- sabat 16y agoI'm kind of kidding, but Ruby lets you do things more elegantly than you can in Perl, and with less verbosity (hence the Java comment). It's really a syntax issue that I'm talking about, but it matters a lot for readability and language usability. Perl: my $x = 'Apple Carrot Banana'; # sort them into an array my @y = sort split(' ', $x); # do we have more than 2 elements? (just a random test) if (scalar(@y) > 2) { print "we've got ", scalar(@y), " elements!\n"; } else { print "insufficient elements. fail.\n"; } Ruby: x = 'Apple Carrot Banana' y = x.split(' ').sort if (y.size > 2) puts "we've got #{y.size} elements!" else puts 'insufficient elements. fail.' end Ruby just seems more elegant to me, more programmer-friendly. YMMV.
- chromatic 16y agoA modern Perl programmer might write something much more elegant: my $x = 'Apple Carrot Banana'; my @y = $x->split(' ')->sort; if (@y > 2) { say "we've got ${\@y->size} elements!"; } else { say "insufficient elements. fail."; }
- perigrin 16y agoAnd one that doesn't like autobox would say: use 5.12.2; # enables modern features my $x = 'Apple Carrot Banana'; my @y = sort split ' ', $x; say @y > 2 ? "we've got ${\scalar @y} elements!" : 'insufficient elements. fail.'; Not everything needs to be an Object. Not every call needs to be a method call. Some people think better with procedures, some people think better with objects. One of the reasons I personally like Perl is I can use which ever one is appropriate to the problem domain. Edit: forgot the `sort` call.
- colomon 16y agoOr ever-so-slightly lighter Perl 6 version: my $x = 'Apple Carrot Banana'; my @y = $x.words.sort; if @y > 2 { say "we've got {@y.elems} elements!"; } else { say "insufficient elements. fail."; }
- deleted 16y ago[deleted]
- hyperbovine 16y agoIronic that the final rebuttal to "Perl looks like Java" is method chaining using periods :-) But hey, that looks very nice--glad to see Perl finally "got the dots." It's been years since I used Perl, mainly because I was squarely in the mindset of the OP. I'll have to give 6 a look.