On Thu, Jul 28, 2016 at 10:05 AM, hw <h...@gc-24.de> wrote:
snip
> So which character encoding on STDOUT does perl use by default?  That should
> be utf-8 without any further ado, shouldn´t it?  When I add
>
>
> binmode STDOUT, ":encoding(utf-8)";
>
>
> the characters are displayed correctly in the terminal.  Why would perl use
> something else than utf-8 by default?

Take the following with a grain of salt.  My knowledge is mostly
hearsay and supposition with a dash of cargo cultism on this matter.

Perl predates even Unicode (they both came out in '87).  Unicode did
not get much traction until the mid-nineties when people started
realizing that UTF-8 (created in '92) was a good thing.   So, for most
of its early history, Perl used Latin1.  It still does to a large
extent for backwards compatibility reasons.  To make Perl 5 a proper
UTF-8 environment there are a number of knobs to pull and buttons to
poke.

You may find this video from YAPC NA 2016 enlightening:
https://www.youtube.com/watch?v=TmTeXcEixEg

Others that may be helpful (I haven't watched them, but I trust the speaker):

https://www.youtube.com/watch?v=iZgqhVu72zc
https://www.youtube.com/watch?v=X2FQHUHjo8M

Also, this answer on StackOverflow by tchrist (Tom Christiansen, who I
would say knows the most about the intersection of Perl and Unicode)
is a good resource: http://stackoverflow.com/a/6163129/78259

Hope this helps.


-- 
Chas. Owens
http://github.com/cowens
The most important skill a programmer can have is the ability to read.

--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to