Slide 1

Slide 1 text

Perl Quiz😆 Shoichi Kaji

Slide 2

Slide 2 text

Q1. ࣍ͷจষ͸ਖ਼͍͔͠? Time::Localύοέʔδʹ͓͍ͯ timelocalؔ਺Ͱ͸ͳ͘ timelocal_modernؔ਺Λ࢖͏ ͜ͱ͕ਪ঑͞Ε͍ͯΔɻ

Slide 3

Slide 3 text

A1. ਖ਼͘͠ͳ͍

Slide 4

Slide 4 text

• timelocal ͸جຊతʹ͸ localtime ͷ"ٯ"Λఏڙ͢Δؔ਺ɻ Y,m,d,H,M,SΛड͚औΓunixtimeΛฦ͢ɻ • ͕ɺ"DWIM"ͳڍಈΛ͢Δؔ܎্ɺ 2020೥Λڥʹ݁Ռ͕มΘΔՄೳੑ͕͋Δ😨 • ͜ΕΛղܾ͢΂͘ɺܾఆతͳ݁ՌΛฦ͢ timelocal_modern͕༻ҙ͞Εͨɻ • ͕ɺͦΕ΋গʑ͍·͍ͪͩͬͨͷͰɺݱࡏͰ͸ timelocal_posixΛ࢖͏͜ͱ͕ਪ঑͞Ε͍ͯΔɻ ͜Ε͸localtimeͷਅͷ"ٯ"Λఏڙ͢Δɻ

Slide 5

Slide 5 text

Q2. ࣍ͷ ʹೖΔ΋ͷ͸Կ͔? ֎෦ίϚϯυͷඪ४ग़ྗΛ ಘΔؔ਺ͱͯ͠ qx//, ``, ͕͋Δɻ

Slide 6

Slide 6 text

A2. readpipe

Slide 7

Slide 7 text

• rjbs͞ΜͷϒϩάಡΜͰ͍ͯɺ readpipeͱ͍͏ؔ਺͕͋Δ͜ͱΛ࠷ۙ஌ͬͨɻ • ಉ͡ಇ͖Λ͢Δ૊ΈࠐΈؔ਺͕ 3ͭ΋͋Δඞཁ͸...

Slide 8

Slide 8 text

Q3. PerlͰ͸ϋογϡϦϑΝϨϯεͱ ϒϩοΫʹಉ͡ه߸ {} Λ༻͍͍ͯΔɻ ͳΜΒ͔ͷཧ༝ͰϋογϡϦϑΝϨϯεΛ ໌͍ࣔͨ͠ͱ͖͸ +{} ͕ଟ༻͞ΕΔɻ Ͱ͸ٯʹϒϩοΫΛ໌͍ࣔͨ͠ͱ͖ ͳΜͱॻ͘ͱΑ͍͔ʁ

Slide 9

Slide 9 text

A3. {; }

Slide 10

Slide 10 text

• metacpanΛோΊ͍ͯͨΒɺ App::UniϞδϡʔϧͰ࢖ΘΕ͍ͯͯ஌ͬͨɻ • ࣮ࡍͷͱ͜Ζɺ+{}, {; } ΋ຊ౰ʹඞཁͳ৔ॴ͸গ ͳ͍ͱࢥ͏😇

Slide 11

Slide 11 text

Q4. Perl v5.16Ҏ্ʹ͓͍ͯ ࣮ߦϢʔβͷhomeσΟϨΫτϦ Λऔಘ͢Δ؆ศͳํ๏͸ʁ

Slide 12

Slide 12 text

A4. my $home = (<~>)[0];

Slide 13

Slide 13 text

• ΫϩεϓϥοτϑΥʔϜΛҙ্ࣝͨ͠Ͱ HomeσΟϨΫτϦΛऔಘ͢Δͷ͸݁ߏେมɻ • ͪΌΜͱ΍ΔͳΒFile::HomeDirϞδϡʔϧΛ࢖͏ͷ͕ ΑΖ͍͠ɻ • "͋Δఔ౓"Ͱे෼ͳΒɺάϩϒ(glob,<>)Ͱ "~" Λ ղܾͤͯ͞औಘ͢Δͷ͕ϥΫɻ • ͳ͓ɺPerl5.16ະຬ΋ҙ͍ࣝͨ͠ͳΒ File::HomeDir::TinyΛ࢖͏ͱΑΖ͍͠ɻ

Slide 14

Slide 14 text

Q5. Perl͸͋ΔόʔδϣϯΑΓ @INCͷॱ൪͕มΘ͍ͬͯΔɻ มΘͬͨͷ͸࣍ͷ͏ͪͲΕ͔? (A) v5.10͔Β (B) v5.12͔Β (C) v5.14͔Β

Slide 15

Slide 15 text

A5. (B) v5.12͔Β

Slide 16

Slide 16 text

• @INC͸Ϟδϡʔϧαʔνύε͕ೖ͍ͬͯΔม਺ɻ • @INC͸جຊతʹ͸ * 1൪໨: CPANϞδϡʔϧೖΔsitelib * 2൪໨: coreϞδϡʔϧ͕ೖΔcorelib ʹΑͬͯߏ੒͞ΕΔɻ • ͕ɺ5.10Ҏલ͸corelib, sitelibͷॱʹͳ͍ͬͯͨɻ • ͦͷؔ܎্ɺ5.10ҎલͰdual lifeϞδϡʔϧΛΠϯετʔϧ͢Δ ͱɺcorelibʹ্ॻ͖͞ΕΔɻ • CartonͷޙܧCarmel͕v5.12Λཁٻ͍ͯ͠Δͷ͸͜Ε͕ཁҼɻ

Slide 17

Slide 17 text

Q6. ҎԼͷίʔυΛWindowsͰ࣮ߦ͢Δͱ ʮHello, World!ʯ ͱදࣔ͞ΕΔɺ͞Εͳ͍?

Slide 18

Slide 18 text

A6. දࣔ͞Εͳ͍

Slide 19

Slide 19 text

• Windowsʹ͓͍ͯ͸ ͨͱ͑ system LIST ܗࣜͰ͋ͬͯ΋ ಛघจࣈΛΫΦʔτ͠ͳ͍ͱ͍͚ͳ͍Մೳੑ͕͋ Δɻ • ઌͷྫͩͱಛʹʮ"ʯ͕໰୊ͱͳͬͯ ʮHello World!ʯͱදࣔ͞Εͳ͍ɻ • Windows༻ͷΫΦʔτʹ͸ɺWin32::ShellQuote ϞδϡʔϧΛ࢖͏ͱΑ͍ɻ

Slide 20

Slide 20 text

͓ΘΓ