in reply to println

There is a reason for there not being a println function in Perl. It is bad to have two functions that do exactly the same but with a small change. There is int() but no ceil(), floor(), fix(), round() etcetera, as all of those can be made using int(). POSIX has some of these, though.

Refactoring code to save only a few keystrokes also makes your code less readable. Suppose you have five listing functions that do the same, but format their output a little different. It would probably be a good idea to have a single function that takes an extra argument instead of five separate functions.

There really isn't an easy way to create your own println, as there is (correct me if I'm wrong) no way to emulate prints "print HANDLE LIST" syntax. Well, a source filter might take you there, but that will never be exactly the same.

- Yes, I reinvent wheels.
- Spam: Visit eurotraQ.

Replies are listed 'Best First'.
Re^2: println
by noelgolding (Initiate) on Jun 12, 2013 at 02:39 UTC

    I realize this is an old thread, but I was asking myself the question, "Why is println not built into the perl language?". I came upon this post, and I still don't feel I have an answer.

    Is this the real reason that println is not a builtin function? Then why is there a printf function? Based on the documentation, printf is equivalent of calling print with parameters.

    http://perldoc.perl.org/5.10.0/functions/printf.html
    "Equivalent to print FILEHANDLE sprintf(FORMAT, LIST) ..."

    Perl is a language that provides one with many options to accomplish a single goal, so your reasoning makes little sense to me. I personally would love to see println added as a builtin function. I don't see any problems with a little syntactic sugar if it helps developers to be more productive.

      say was added in 5.10.
      لսႽ† ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ