Earlier quoted context omitted.
What does Perl have in that regard that Ruby hasn't? Ruby also has open classes and you can chain and modify any of the base classes, be it "String" or "Object". I don't know anything like "MooseX", but that might be because Ruby actually has a somewhat working object system.
Perl lets you add new language keywords which take effect during the parse phase.
Why Did I Choose Perl When Building Crowdtilt?
81–90 of 143 posts
Re: Why Did I Choose Perl When Building Crowdtilt?
#82Earlier quoted context omitted.
As a self-trained programmer who cut his chops on Perl, I find it a bit humorous that people complain about reading Perl, while every coding test at a job interview involves some five-way algorithm or other generally-arcane CS concept that CS people spend two years practicing and that the business will never use. Two forms of complexity, one valued much higher within the industry.
+1 It is so hard to know that @ means array and % means a hash (key/value pair) haha.
Re: Why Did I Choose Perl When Building Crowdtilt?
#83I've had some experience with perl. While it has a lot of advantages (most of them are described in your post) it clumsily support OOP and is very hard to maintain. It's true that perl gets you going pretty fast, But once your code base reaches several hundred classes, you'll really regret ever considering it for production. As a grad student I found myself using it quite a lot for writing quick and dirty scripts for…
Re: Why Did I Choose Perl When Building Crowdtilt?
#84Earlier quoted context omitted.
umm, verbosity? package Point; use Moose; # automatically turns on strict and warnings has 'x' => (is => 'rw', isa => 'Int'); has 'y' => (is => 'rw', isa => 'Int'); sub clear { my $self = shift; $self->$_(0) for qw/x y/} 1;
Verbosity. class Point { has Int $.x is rw; has Int $.y is rw; method clear() { $.x = 0; $.y = 0; } } :)
Re: Why Did I Choose Perl When Building Crowdtilt?
#85Earlier quoted context omitted.
umm, verbosity? package Point; use Moose; # automatically turns on strict and warnings has 'x' => (is => 'rw', isa => 'Int'); has 'y' => (is => 'rw', isa => 'Int'); sub clear { my $self = shift; $self->$_(0) for qw/x y/} 1;
Verbosity. class Point { has Int $.x is rw; has Int $.y is rw; method clear() { $.x = 0; $.y = 0; } } :)
Re: Why Did I Choose Perl When Building Crowdtilt?
#86The one thing I've learned as a consultant working outside the startup world, in the boring world of everyday business is just how much of the computerized world still runs on perl. I've seen some fantastically made systems and some real stinkers. In the HN echo chamber, it seems like everyone who's anyone has moved on to ruby, rails, python, django, etc. Look into the every-web. My god, it's full of perl.
Re: Why Did I Choose Perl When Building Crowdtilt?
#87I learned perl in the past (I'd rate myself as ~somewhat proficient~, ignoring 'new style perl'), and I like the language. That puts me in a strange place when I talk to friends: I don't know ruby nor python, but do think that perl's a nice language. A strange position to be in, by now. That said: The do what I mean paragraph kind of reminded me of the Stripe CTF. One of the levels (5?) was vulnerable to pass paramet…
Re: Why Did I Choose Perl When Building Crowdtilt?
#88I'm sorry but most of these arguments can be used to defend the use of ruby or python as well.
Re: Why Did I Choose Perl When Building Crowdtilt?
#89Maybe he's worried because someone else might have to read the code someday and they might wonder why it's Perl.
What's needed is a way to store code in an "intermediate" form that can easily be translated into whatever scripting language is desired.
Re: Why Did I Choose Perl When Building Crowdtilt?
#90Earlier quoted context omitted.
Perl lets you add new language keywords which take effect during the parse phase.
So, basically, Perl has macros? REAL macros? Like, say, in Lisps? Could I, for example, make fully inlined merge sort, as demonstrated a couple days ago here by a post from Racket blog? Now I'm curious.