Upgrade to Pro — share decks privately, control downloads, hide ads and more …

journey through the programming language(censored edition)

takkanm
January 16, 2015

journey through the programming language(censored edition)

http://esminc.doorkeeper.jp/events/18782 で話した資料です。
コード例があったのですが、口での説明がないと誤解をうみそうな感じな気がするので、このエディションでは削除しています

takkanm

January 16, 2015
Tweet

More Decks by takkanm

Other Decks in Programming

Transcript

  1. KPVSOFZUISPVHIUIF
    QSPHSBNJOHMBOHVBHF
    Ӭ࿨γεςϜϚωδϝϯτ
    ΞδϟΠϧࣄۀ෦
    ࡾଜӹོ

    View Slide

  2. NF
    ✓ ৽ଔ೥໨
    ✓ (JU)VCUBLLBON
    ✓ ύʔϑΣΫτ3VCZͰϝλϓ
    ϩάϥϛϯά·ΘΓΛॻ͍ͯ
    ·͢

    View Slide

  3. 5-%3
    ͨ͘͞ΜͷϓϩάϥϛϯάݴޠΛ
    ஌Δ͜ͱ͸
    Α͍ίʔυΛॻ͘खॿ͚ʹͳΔ

    View Slide

  4. ࠓ೔ͷର৅ऀ
    ࢓ࣄͰ࢖͏ϓϩάϥϛϯάݴޠ͙Β͍͔͠
    ஌Βͳ͍ਓ

    View Slide

  5. ΞδΣϯμ
    ✓ ԿނΘ͕ͨ͠ϓϩάϥϛϯάݴޠʹڵຯΛ࣋ͭ
    Α͏ʹͳͬͨͷ͔
    ✓ ϓϩάϥϛϯάݴޠ͸ͨ͘͞Μଘࡏ͢Δ
    ✓ Կނͨ͘͞ΜͷϓϩάϥϛϯάݴޠΛֶͿͱΑ
    ͍ͷ͔

    View Slide

  6. Θ͕ͨ͠Կނ
    ϓϩάϥϛϯάݴޠʹ
    ڵຯΛ࣋ͬͨͷ͔

    View Slide

  7. େֶ࣌୅ɺतۀͰ͸$ݴޠɺ
    ՈͰ͸3VCZ

    View Slide

  8. )BTLFMMΛ஌Δ

    View Slide

  9. ͦΕ·Ͱ΋$΍3VCZҎ֎ʹ΋ݴޠ͕
    ͋Δ͜ͱ͸஌͍͕ͬͯͨɺ)BTLFMMͷ
    ଞͷݴޠͱҧͬͨॻ͖ํΛ͠ͳ͍ͱ͍͚
    ͳ͍ͱ͜ΖʹিܸΛ͏͚ͨɻ

    View Slide

  10. ϓϩάϥϛϯάݴޠ͸
    ͨ͘͞Μଘࡏ͢Δ

    View Slide

  11. ੈͷதʹ͸ɺଟ਺ͷϓϩάϥϛϯάݴޠ͕
    ଘࡏ͍ͯ͠·͢ɻ༷ʑͳϓϩάϥϛϯάݴޠͷ
    ॻ͖ํΛݟ͍͖ͯɺϓϩάϥϛϯάݴޠͷ
    ੈքΛ೷͍ͯΈ·͠ΐ͏ɻ

    View Slide

  12. දࣔ

    View Slide

  13. ͜͜Ͱ঺հ͢Δݴޠ
    ✓ खଓ͖ܕݴޠ$ݴޠ
    ✓ खଓ͖Λهड़ͯ͠ϓϩάϥϛϯά͢Δ
    ✓ ΦϒδΣΫτࢦ޲ݴޠ+BWB *P
    ✓ ΦϒδΣΫτʹϝοηʔδΛૹͬͯϓϩάϥϛ
    ϯά͢Δ

    View Slide

  14. ؔ਺ ϝιου
    ఆٛ

    View Slide

  15. ͜͜Ͱ঺հ͢Δݴޠ
    ✓ ಈతܕ෇͚ݴޠ3VCZ
    ✓ ม਺ͷܕ͕࣮ߦ࣌ʹಈతʹܾఆ͞ΕΔ
    ✓ ੩తܕ෇͚ݴޠ+BWB )BTLFMM
    ✓ ม਺ͷܕ͕࣮ߦલʹܾఆ͞ΕΔ

    View Slide

  16. ϓϩάϥϛϯάݴޠ͕มΘΔͱ
    ಉ͜͡ͱΛ΍Δ͚ͩͳͷʹ
    ॻ͖ํ΋มΘΔ

    View Slide

  17. ࣜͷධՁ

    View Slide

  18. ධՁઓུ
    ϓϩάϥϛϯάݴޠ͕͔ΘΔͱ͕ࣜධՁ͞ΕΔλΠϛϯ
    ά͕ҧ͏͜ͱ΋͋Δɻ3VCZ΍+BWBͳͲ͸ઌߦධՁͱ
    ݺ͹Εɺࣜ͸͙͢ʹධՁ͞ΕΔɻҰํɺ)BTLFMM͕࠾༻
    ͍ͯ͠Δ஗ԆධՁ͸ɺ஋͕ඞཁʹͳͬͨͱ͖ʹඞཁͳͿΜ
    ͔͠ධՁ͞Εͳ͍Α͏ʹͳ͍ͬͯΔɻ

    View Slide

  19. ͜ͷΑ͏ʹҰޱʹʮϓϩάϥϛϯάݴޠʯͱ͍ͬͯ΋ɺ
    ϓϩάϥϜͷॻ͖ํ͔ΒධՁͷ࢓ํ౳ɺ༷ʑͳҧ͍͕͋Δɻ
    ͔͠͠ɺϓϩάϥϜΛ࣮ߦͯ͠ಘΒΕΔ݁Ռ͸ɺ
    ͲͷݴޠΛ༻͍ͯ΋࠷ऴతʹ͸ಉ݁͡ՌΛಘΔ͜ͱ͕Ͱ͖Δɻ

    View Slide

  20. Կނͨ͘͞Μͷ
    ϓϩάϥϛϯάݴޠΛ
    ֶͿͱΑ͍ͷ͔

    View Slide

  21. Կނ͔
    ✓ ࣗ෼ʹ༩͑ΔӨڹ
    ✓ ݴޠ͕ଞͷݴޠ͔Βड͚
    ΔӨڹ

    View Slide

  22. ࣗ෼ʹ༩͑ΔӨڹ

    View Slide

  23. ͍Ζ͍ΖͳϓϩάϥϛϯάݴޠΛ
    ஌Δ͜ͱͰɺ༷ʑͳߟ͑ํ΍දݱ
    ํ๏ʹ৮ΕΔ͜ͱ͕Ͱ͖Δ

    View Slide

  24. ໰୊Λղ͘ͱ͖΍
    ཧղ͢Δͱ͖ͷ
    ݟํ΍ߟ͑ํΛ
    ม͑Δ͖͔͚ͬʹͳΔ

    View Slide

  25. աڈͷܦݧྫ

    View Slide

  26. 3VCZΛ஌ͬͨޙʹ
    )BTLFMMΛษڧ

    View Slide

  27. ͳΜͰ΋Ϧετͱͯ͠
    ෭࡞༻ͳ͠Ͱܭࢉͨ͘͠ͳΔ

    View Slide

  28. ྫͭͷ഑ྻͷಉ͡ཁૉ൪
    ߸ͷ֤ཁૉΛ͔͚͋Θͤͯɺ
    ͢΂ͯ߹ܭ͍ͨ͠

    View Slide

  29. View Slide

  30. View Slide

  31. View Slide

  32. ஫ҙ

    View Slide

  33. ଞͷݴޠͰΑ͍ͱ͞Ε͍ͯΔ͜ͱ͚ͩͰɺ
    ॻ͘ͱࠔΔ͜ͱ΋͋Δ

    View Slide

  34. ѱ͍ྫ
    ςΩετ

    View Slide

  35. ͓͢͢Ίͷํ๏
    ผͷݴޠͰΑ͍ͱ͞Ε͍ͯΔॻ͖ํ΍
    ߟ͑ํΛ஌͔ͬͨΒͱ͍ͬͯશ෦ʹ
    ࢖͍ͨ͘ͳΔؾ࣋ͪΛ͓͑ͭͭ͞ɺ
    ⓸Λݟͯࢼ͍ͯ͘͠

    View Slide

  36. ݴޠ͕ଞͷݴޠ͔Β
    ड͚ΔӨڹ

    View Slide

  37. ଞͷݴޠͷߟ͑ํ͕
    ผͷݴޠʹऔΓೖΕΒΕΔ

    View Slide

  38. 3VCZ͕1FSM΍-JTQ͔ΒͷӨڹΛड͚͍ͯΔΑ
    ͏ʹɺݴޠ͕ੜ·Ε͖ͯͨͱ͖͔ΒɺଞͷݴޠͷӨ
    ڹΛड͚͍ͯΔ͜ͱ͕͋Δɻ·ͨɺ+BWBͷϥϜ
    μࣜ΍3VCZͷ-B[Z౳ɺଞͷݴޠͰΑ͍ͱ͞Ε
    ͍ͯΔ΋ͷ͕ݴޠʹͱΓ͜·Ε͍ͯ͘͜ͱ΋͋Δɻ
    ଞͷݴޠͰ͋ͨΓ·͑ͱ͞ΕΔߟ͑ํ͕ɺΑ͍ελ
    Πϧͩͱ͍ΘΕͩ͢͜ͱ΋͋Δɻ

    View Slide

  39. ·ͱΊ

    View Slide

  40. ͍Ζ͍ΖͳϓϩάϥϛϯάݴޠΛֶͿ͜ͱ
    ͸ɺීஈॻ͘ίʔυʹӨڹΛ༩͑Δɻ·ͨɺ
    ͦͷ஌ࣝ͸;ͩΜ࢖͍ͬͯΔݴޠʹରͯ͠
    ৽͍͠ൃݟΛ͋ͨ͑ͯ͘ΕΔ͜ͱ͕͋Δɻ

    View Slide

  41. ࠷ޙʹ

    View Slide

  42. –ୡਓϓϩάϥϚ ୈ1 ষ ୡਓͷ఩ֶ
    lຖ೥গͳ͘ͱ΋ʔͭͷݴޠΛֶश͢Δz

    View Slide

  43. ࠓ೔ͷࢀߟจݙ
    ✓ ͭͷݴޠͭͷੈք ΦʔϜࣾ

    ✓ िؒݴޠͰͭͷݴޠΛֶ΂Δຊ
    ✓ ίʔσΟϯάΛࢧ͑Δٕज़ ٕज़ධ࿦ࣾ

    ✓ ༷ʑͳϓϩάϥϛϯάͷߟ͑ํΛϘτϜΞοϓʹ঺հ͢Δຊ
    ✓ ϓϩάϥϛϯάݴޠͷ֓೦ͱߏ଄ ϐΞιϯ

    ✓ ͍ΖΜͳݴޠͰϓϩάϥϛϯάύϥμΠϜΛ঺հͯ͘͠ΕΔ
    ͕ɺϐΞιϯͷͨΊೖखࠔ೉ʜ

    View Slide

  44. ͞Βʹϓϩάϥϛϯά
    ݴޠʹڵຯΛ࣋ͬͨΒ

    View Slide

  45. USZ
    ✓ ݴޠͷػೳ͕Ͳ͏΍࣮ͬͯ૷͞Ε
    ͍ͯΔ͔ʹڵຯΛ࣋ͬͯΈΑ͏
    ✓ ݴޠ͕Ͳ͏΍࣮ͬͯ૷͞Ε͍ͯΔ
    ͔ʹڵຯΛ࣋ͬͯΈΑ͏

    View Slide

  46. ࣈ۟ղੳ
    ߏจղੳ
    ίϯύΠϧ
    ࣮ߦ

    View Slide