Slash Boxes
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

use Perl Log In

Log In

[ Create a new account ]

Aristotle (5147)


Blah blah blah blah blah []

Journal of Aristotle (5147)

Sunday August 05, 2007
07:04 PM

Newsflash: resorting to `eval` is a failure in your language

[ #34004 ]

Even if the Rubyists think it’s fashionable and trendy.

Oh yeah, and Cosine Jeremiah has never heard of do. That’s OK, you don’t need to know a language before you can opine on its sucktitude.

Besides, what a great design! I mean, evaluating another source file every time you instantiate an object in that class? Awesome! If I had to maintain his code I’d refactor that part out of existence with a quickness!

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • I'd reply, but... I have to log in? Ugh.

    I really hate the "I do not understand the language, and therefore I hate it" school of blogging.
  • So, Perl, Python, Ruby, etc are failures because they even have eval then? Or, are you merely criticizing people who actually use it?
    • I thought the title stated my position clearly: if you have to use eval, it’s a sign of something missing from the language (and if you don’t have to but do, it’s a sign of weakness as a programmer).

      That doesn’t mean a language is bad if it has eval. If it helps you understand, just substitute goto for eval; both forms of the statement are completely congruent.

  • I'm glad that we in the Perl community are good pissers, because I think we're going to win this contest!
  • I think your aversion to eval is a mistake, but if it is not then you are not going to convince me with your current line of thought. I posted my reply: []
    • How am I supposed to argue with your example? You showed a design wherein a class reads a config file every time it is instantiated. I have no idea how that can be construed as useful; the fact that you use eval is incidental and at best draws attention away from the fact that you are reading a config file on every instantiation. After all, “the config file is code!” Do you really need to recompile the code every time someone makes an instance of it? Sorry, that example just doesn’t cut i

      • I'll just take this to mean we still have irreconcilable differences in our opinions here. :) I appreciate the time you took to respond.
        • Basically my opinion is that anyone who thinks Perl, Python and Ruby differ in any sort of significant fashion hasn’t seen a lot of languages. The three are close to identical. Sure, there are lots and lots of superficial differences – they optimise in different directions, and that is what ends up making me prefer Perl and you Ruby and still others Python. But their fundamental premises are completely identical so there is no substantial difference in terms of expressiveness, overall. Ruby wins