すごいスライド(Lazy K 紹介)

1,310 views

Published on

Web: http://nna774.net/reikai01/

Published in: Technology
1 Comment
3 Likes
Statistics
Notes
  • Web: http://nna774.net/reikai01/

    難解プログラミング勉強会のスライドにご期待ください……
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
1,310
On SlideShare
0
From Embeds
0
Number of Embeds
34
Actions
Shares
0
Downloads
2
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide

すごいスライド(Lazy K 紹介)

  1. 1. めっちゃすごいスライド 博士の異常な愛 情 または私は如何にして心配 するのを止めて参照透明を 愛するようになったか 7 anon 回 1 CM K
  2. 2. 自己紹介 7anon :DI ] [ : " " 1 477aemanon@ :rettiwT 最近改二が実装された A おなまえ れべるぜろ 名無しの人 のな と呼ばれることが多い? 理学部 回生
  3. 3. ...cte elloCnaK rlbmuT rettiwT ukappihcN 3102 sulP egnellahC repoleveD avaJ dna HOCIR qoC プライベートクラウド計画 提督 アドベントカレンダー 勉強会 3102 CMK - での活動 CMK
  4. 4. このスライド
  5. 5. とかいうすごいやつ sj.laever
  6. 6. で適当に書いてひな形に放り込めばかっこいいスライド になる lmth
  7. 7. でも
  8. 8. LMTH 生の
  9. 9. 書きたくない!!! 1111 閉じタグの対応とか考えるのヤダー
  10. 10. ???「大丈夫よ 司令官! 式があるじゃない!」 S , がブームだが、 は要するにカッコのない もぶ厚いカッコのある 。 ybuR psiL ybuR LMX 竹内郁雄 。 psiL いま
  11. 11. というわけで 式から に変換するの最近作りました 仮 まだ未発覚のバグ潜んでそう とりあえずこのスライドはコンパイルできた . LMTH ) S (pxesth 既存のものもあったけど不満点あったので作ってみた
  12. 12. かんわきゅうだい
  13. 13. KyzaL 楽しい 門 入
  14. 14. はじめに
  15. 15. このスライドは難解プログラミング言語勉強会の宣伝です あんまり詳しい話は今回はパス 言語の紹介ぐらいだけ . 詳しくは難解~に参加しましょう!
  16. 16. ?Ky zaL si tahW
  17. 17. = K x .yx = S )z y( z x .zyx λ λ λ x .x 3 = I 組み込み関数は つだけ
  18. 18. コンビネータ I x = x I λ 引数を一つ取ってその引数を返す関数 とったものをそのまま返すだけ x .x rotanibmoC ytitnedI I == KKS 実は が成り立つのでなくてもいい
  19. 19. コンビネータ K x = y x K λ 引数をとって つ目の引数を返す関数 「引数を一つ取って とする 「引数を一つ取って を返す関数」 を返す関数」と言ってもいい x .yx 1 x( x -- rotanibmoC tnatsnoC ) (tnatsnoK 定数関数 -- 独 今回調べてて知った ,) 2 ややこしいなら一旦置いといていいかも
  20. 20. 3 第三引数をシェアしてる感じ 2 rotanibmoC gnirahS 1 , 3 つ引数を取って λ つ目と つ目に つ目を適用する関数 )z y( z x .zyx )z y( z x = z y x S S コンビネータ
  21. 21. この つと括弧だけで書く 3 コンビネータスタイルの場合は ) ( めっちゃ簡単!! とか命令数多すぎ!! k*ufniarB
  22. 22. 「これらの組み合わせだけでどうやってプログラム書くの 組み合わせても謎の関数しかできないですよね 」 .
  23. 23. 入力として受け取ったものを あなたが書いたプログラム 謎の関数 に引数として渡して 出てきたものが出力です , - " " - . 正確には入力として渡された文字列がチャーチ数のリストとしてエンコードされてそれが渡されて 詳しくは難解~で!! --
  24. 24. サンプルコード ohc e I
  25. 25. サンプルコード エラトステネスのふるい K (SII(S(K(S(S(K(SII(S(S(KS)(S(K(S(KS)))(S(K(S(S(KS)(SS(S(S(KS) (S(S(KS)(S(KK)(S(KS)(S(S(KS)(S(KK)(S(KS)(S(S(KS)(S(KK)(SII))) (K(SI(KK)))))))(K(S(K(S(S(KS)(S(K(SI))(S(KK)(S(K(S(S(KS)K)(S( (S(SII)I(S(S(KS)K)I)(S(S(KS)K)))))(SI(K(KI)))))))))(S(KK)K))) (S(SI(K(S(S(S(S(SSK(SI(K(KI))))(K(S(S(KS)K)I(S(S(KS)K)(S(S(KS (S(K(S(SI(K(KI)))))K)(KK))))(KK))(S(S(KS)(S(K(SI))(S(KK)(S(K( (SI(KK))))))(K(K(KI)))))(S(S(KS)(S(K(SI))(SS(SI)(KK))))(S(KK) (S(K(S(S(KS)K)))(SI(K(KI)))))))))(K(K(KI))))))))))(K(KI)))))( (S(K(S(K(S(K(S(SI(K(S(K(S(S(KS)K)I))(S(SII)I(S(S(KS)K)I)))))) (S(S(KS)(S(KK)(SII)))(K(SI(K(KI)))))))(SII(S(K(S(S(KS)(S(K(S( (KI))))(SS(S(S(KS)(S(KK)(S(KS)(S(K(SI))K)))))(KK))))))(S(S(KS (S(K(S(KS)))(S(K(S(KK)))(S(S(KS)(S(KK)(SII)))(K(S(S(KS)K)))))
  26. 26. まとめ 難解プログラミング勉強会に参加しよう! ゆるふわです くわしくやります いろいろ今回は説明すっ飛ばした 参照透明な海に潜りましょう ものまね鳥をまねましょう .
  27. 27. ありがとうございました なにか質問など
  28. 28. lecxeimuF ;93:80 ) ( K yzaL 公式サイト 関数型λカ娘一巻 ラムダ計算入門 年 月 入門 51 日 月 による版 4 3102 K yzaL K yzaL 参考文献

×