Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • The fact that it has no dependencies makes it even more compelling.

    Really? You honestly think that a webapp framework should also ship with its own object system, its own cookie parser, its own HTTP server, its own HTTP header system, and to top it off, its own new templating system!

    I look at Mojo and can only think that it represents the height of foolish arrogance, and I for one am repelled by it.

    Catalyst is far from perfect, but at least the Catalyst developers can concentrate on building a web framework

    • Apparently people can't install modules if they have dependencies, but they can install modules if they don't have dependencies. I don't really get it.

      But anyway, reinvention aside, Mojolicious::Lite is basically the same tired CGI.pm ideas repackaged as new syntax. Great for blogging (like so many ideas from the Ruby community), but not so great for solving problems web application developers actually have.

      • by Ovid (2709) on 2009.07.30 1:44 (#69775) Homepage Journal

        There's a big difference between "installing" a module and unpacking it in a directory. Almost anyone can do the latter.

        And I can't agree with your comments comparing Mojolicious::Lite to CGI.pm. I'm very familiar with the latter module and it doesn't, out of the box, support this:

        # /foo/*
        get '/foo/:bar' => sub {
            my $self = shift;
            my $bar  = $self->stash('bar');
            $self->render(text => "Our :bar placeholder matched $bar");
        };

        # /*something/foo
        get '/(:bar)something/foo' => sub {
            my $self = shift;
            my $bar  = $self->stash('bar');
            $self->render(text => "Our :bar placeholder matched $bar");
        };

        CGI.pm is pretty much for reading Web data, playing with cookies and building HTML. It's not for dispatching. Oh, and one thing I like about Mojolicious and don't like about Catalyst:

        # look ma, no hashref!
        my $bar  = $self->stash('bar');

        People who want to learn Web programming and maybe learn a bit of Perl may very well Mojolicious::Lite a fantastic starting point. As for whether or not it solves larger problems, I can't say as I don't know enough about its capabilities, but I'm very surprised at some of the harsh reactions against it.