http://www.perlmonks.org?node_id=522588


in reply to Re^3: Happy 2006
in thread Happy 2006

In my opinion, what would make the puzzle much more interesting would be to require single expression evaluation as your solution does but prohibit the use of eval $string.
You went to a school where you didn't have to program a calculator in your first year? I have a different opinion - writing an expression evaluator is boring, and it would be a reimplementation of functionality that perl already provides.

I like string eval. I wish every programming language had such functionality.

Perl --((8:>*

Replies are listed 'Best First'.
Re^5: Happy 2006
by Limbic~Region (Chancellor) on Jan 12, 2006 at 13:42 UTC
    Perl Mouse,
    You went to a school where you didn't have to program a calculator in your first year?

    No. Computers were pretty scarce in highschool and programming courses were non-existant.

    ...writing an expression evaluator is boring...

    I am sure doing anything you already know how to do can be boring. If you have had the benefit of a college education in computer science and/or work as a programmer professionally, building a precedence parser this trivial is probably extremely boring.

    I like string eval.

    I agree and use it when it makes sense to. OTOH, when people post neat puzzles like this I take it as an opportunity to learn things I don't already know. Since it isn't production code - there is no harm in a little golf, obfu, or non-straight forward solutions. I often intentionally limit the tools I will allow myself to use - see Necessity is the mother of invention for an explanation of why.

    Again, thanks for the puzzle.

    Cheers - L~R