Successfully reported this slideshow.

ネタプログラミング言語クリエイターYouma (Gunma.web #8 2012/03/03)

1

Share

Loading in …3
×
1 of 92
1 of 92

ネタプログラミング言語クリエイターYouma (Gunma.web #8 2012/03/03)

1

Share

Download to read offline

1枚目のタイトルはフェイクです
中盤に出てくる方が真のタイトルです

サンプル解説:http://d.hatena.ne.jp/parrot_studio/20120304/1330823756
発表補足:http://d.hatena.ne.jp/parrot_studio/20120307/1331047077

1枚目のタイトルはフェイクです
中盤に出てくる方が真のタイトルです

サンプル解説:http://d.hatena.ne.jp/parrot_studio/20120304/1330823756
発表補足:http://d.hatena.ne.jp/parrot_studio/20120307/1331047077

More Related Content

More from parrotstudio

Related Books

Free with a 14 day trial from Scribd

See all

ネタプログラミング言語クリエイターYouma (Gunma.web #8 2012/03/03)

  1. 1. プログラミング 言語”Gunma” Gunma.web #8 @ 2012/03/03 Presented by ぱろっと(@parrot_studio)
  2. 2. Profile
  3. 3. @parrot_studio
  4. 4. parrot-studio.com
  5. 5. 前回のおさらい
  6. 6. 発表テーマ
  7. 7. プログラマに なれない あなたのための 言語戦略
  8. 8. 言及
  9. 9. Gunma.web 言語担当
  10. 10. その後の 雑談テーマ
  11. 11. 群馬を どうやって 盛り上げる?
  12. 12. ある人:  プログラム言語を  作れば?
  13. 13. 私:  Brainf**k準拠で  よければすぐ  (`・ω・́)
  14. 14. parrot$ ./gunma hello.gunma HelloGunma
  15. 15. できました Σ(・ω・ノ)ノ
  16. 16. いけない!
  17. 17. 1分で 終わってしまう! (lll゚Д゚)
  18. 18. そもそも Brainf**k とは?
  19. 19. 8個の 実行可能な 命令
  20. 20. <>+-.,[]
  21. 21. こんな記号だけで プログラムが書けるか (ノ゚Д゚)ノ彡┻━┻
  22. 22. でも書けちゃう・・・ くやしい(́-ω-)
  23. 23. ・・・という 「ネタ」言語
  24. 24. 例:Hello World
  25. 25. 出典:Wikipedia - Hello worldプログラムの一覧
  26. 26. 単純なので 派生もいっぱい
  27. 27. 派生:  JOJO / misa  KQ / etc…
  28. 28. 例: プログラム言語JOJO の定義
  29. 29. 出典:kmaebashi.com/zakki/lang0003.html
  30. 30. 出典:kmaebashi.com/zakki/lang0003.html
  31. 31. ※今から プログラムの 話をします
  32. 32. ※興味がない方は 1分くらい 寝ていてください
  33. 33. 8個の 実行可能な 命令
  34. 34. <>+-.,[]
  35. 35. 出典:kmaebashi.com/zakki/lang0003.html
  36. 36. どれも 原理は同じ
  37. 37. 8個の 実行可能な 命令
  38. 38. (゚Д゚)!!
  39. 39. 抽象化すれば いいんじゃない (́・ω・)?
  40. 40. ソースコード 定義  > = hoge,  < = piyo,... Parser 抽象的な命令列 [:pinc, :inc, Machine :dec, :pdec...] 結果
  41. 41. Parserの「定義」を 入れ替えれば、 いくらでも 言語が作れる ような・・・
  42. 42. ※さあ、 起きてください щ(゚Д゚щ)
  43. 43. というわけで 真のタイトル
  44. 44. ネタ プログラミング 言語クリエイター Gunma “Youma” Gunma.web #8 @ 2012/03/03 Presented by ぱろっと(@parrot_studio)
  45. 45. "Youma"
  46. 46. プログラミング言語 Gunmaの母体
  47. 47. 内部で使われる ライブラリ
  48. 48. "Windstorm"
  49. 49. 意味:暴風
  50. 50.
  51. 51. 上州名物 空っ風
  52. 52. ※ここから 約1分間の 熟睡タイムです (́-ω-)zzz...
  53. 53. Windstorm: - Parser - Machine - Executor
  54. 54. ソースコード 定義  > = hoge,  < = piyo,... Parser 抽象的な命令列 [:pinc, :inc, Machine :dec, :pdec...] 結果
  55. 55. ソースコード Windstorm 定義 Parser 抽象的な命令列 Machine 結果
  56. 56. オリジナル命令を 二つ追加 clip / paste
  57. 57. Youma:  Windstormを叩く  RubyのRakeタスク群
  58. 58. install:  $ git clone git://github.com/parrot-studio/youma.git  $ cd youma  $ bundle
  59. 59. create:  $ rake create:exec gunma gunma.yml
  60. 60. execute:  $ bin/gunma hello.gunma
  61. 61. ※そろそろ起きて ください щ(゚Д゚щ)
  62. 62. というわけで・・・
  63. 63. 既存の BF系言語を 実装してみた (́・ω・)っ
  64. 64. - BF - JOJO - misa
  65. 65. parrot$ bin/bf hello.bf Hello, world!
  66. 66. 動く・・・ 動くぞぉぉぉぉっ! щ(゚Д゚щ)
  67. 67. 新しく ネタ言語を 作ってみた (́・ω・)っ
  68. 68. プログラミング言語 Gunma
  69. 69. 司会: "シリーズ・ぐんまの未来について語る" 今日も群馬についてお話をうかがっていこうと思います。 解説は群馬研究が専門で群馬文化大学教授でもある、群馬太郎先生です。 よろしくお願いします。 教授: 群馬太郎です。 生まれも育ちも群馬の、生粋の群馬人です。 群馬のことなら何でも聞いてください。 (中略) それでは、また来週お目にかかりましょう。 ------------------------ result: HelloGunma
  70. 70. プログラミング言語 Shoborn
  71. 71. (´・ω・)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`) (´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(`・ω・)(・ω・`) (´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`) (´・ω・`)(´・ω・)(´-ω-)(・ω・´)(・ω・`)(´-ω・)(´・ω・)(´・ω・`)(´・ω・`)(´・ω・`) (´・ω・`)(´・ω・`)(`・ω・)(・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・)(´-ω-) (・ω・´)(・ω・`)(・ω・)(´-ω-)(´-ω-)(´-ω-)(´-ω-)(´-ω-)(´-ω-)(´-ω-) (´-ω-)(´-ω-)(´-ω-)(´-ω-)(・ω・)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`) (´・ω・`)(´・ω・`)(´・ω・`)(・ω・)(・ω-`)(´-ω-)(´-ω-)(・ω・)(・ω-`)(´・ω・`) (´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`)(´・ω・`) (´・ω・`)(・ω・)(´・ω・`)(´・ω・`)(´・ω・`)(・ω・)(´-ω-)(´-ω-)(´-ω-)(´-ω-)(・ω・) ------------------------ result: shoborn
  72. 72. プログラミング言語 Suzuha
  73. 73. 失敗した失敗した失敗した失敗した失敗した失敗した失敗した失敗した 失敗した失敗した失敗した失敗した失敗した失敗した失敗した失敗した 失敗した失敗した失敗した失敗した失敗した失敗した失敗した失敗した (中略) 失敗した失敗した失敗した失敗した失敗した失敗した失敗した失敗した 失敗したゴメン。 あたしは失敗あたしは失敗あたしは失敗あたしは失敗 あたしは失敗あたしは失敗あたしは失敗 (中略) こんな人生は無意味だった ------------------------ result: IBN5100
  74. 74. ※わかる人だけ 笑ってくれれば いいです (́-ω-)
  75. 75. 他にもいろいろ 作ったけど・・・
  76. 76. Youmaを 動かして 確認してね (`・ω・́)
  77. 77. https://github.com/parrot-studio/youma https://github.com/parrot-studio/windstorm
  78. 78. この発表の 直後に push予定 Σ(゚Д゚)ガーン
  79. 79. 参考文献
  80. 80. 「プログラム言語を作る」前橋和弥・著 「数学ガール・ゲーデルの不完全性定理」               結城浩・著 「Rubyソースコード完全解説」          青木峰郎・著 http://i.loveruby.net/ja/rhg/book/
  81. 81. DEMO
  82. 82. ありがとう ございました (́・ω・)っ旦
  83. 83. 【おまけ】
  84. 84. #5の発表で参考文献に 「数学ガール」 を挙げた理由
  85. 85. 数学は厳密に言葉 や定義を使う とい うことが、強く関数 型言語に反映されて いると感じたから
  86. 86. 今回 「数学ガール」 を挙げた理由
  87. 87. それは・・・
  88. 88. このパワポは それを書くには 狭すぎる
  89. 89. 続きはWebで!! Σ(・ω・ノ)ノ http://d.hatena.ne.jp/parrot_studio/

×