Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
学ばないDSL (渋谷.rb)
Search
USAMI Kenta
January 15, 2014
Programming
180
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
学ばないDSL (渋谷.rb)
渋谷.rb[:20140115]
http://www.zusaar.com/event/2687020
で発表
USAMI Kenta
January 15, 2014
More Decks by USAMI Kenta
See All by USAMI Kenta
Rubicureに学ぶメタプログラミング
zonuexe
0
240
Other Decks in Programming
See All in Programming
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
530
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
520
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
160
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
230
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.2k
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
270
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
530
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
840
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
350
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
8
5.3k
Foundation Models frameworkで画像分析
ryodeveloper
1
130
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
1
3.7k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
310
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
660
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.5k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
45k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Making the Leap to Tech Lead
cromwellryan
135
10k
Transcript
学ばないDSL 2014/01/15 @tadsan 渋谷.rb[:20140115]
お前誰よ うさみけんた 2012年の夏まで北海道で自宅警備 最近はずっとPHPばっかり書いてます ぷろぐらみんぐ言語が好きです 渋谷.rbの参加は3回め(だった気がする)
自己紹介
ぼくの好きなプログラミング
scripter = ->(*args){ ->{ puts args.join("\n") } } title =
->(text) { "ʰ#{text}ʱ\n" } paragraph = ->(*args){ args.join("\n") + "\n" } chara = ->(name) { ->(text){ "#{name}ʮ#{text}ʯ"} } ryu = chara[:Ϧϡ]; tak = chara[:͔ͨ͠] script = scripter[title[:ԶΑΓڧౕ͍ʹɺձ͍ʹߦ͘], paragraph[:ϐϯϙʔϯ, ryu[:͜Μʹͪ], tak[:͍Ͳͳͨ]], paragraph[ryu[:͍·ͪΐͬͱ͍͍Ͱ͔͢], tak[:͜Ε͔Βग़͔͚·͢]], paragraph[ryu[:ޕޙग़ۈͰ͔͢ʁ], tak[:͍]], paragraph[ryu[:ڧͦ͏Ͱ͢Ͷ], tak[:ͳʹ͕Ͱ͔͢]], paragraph[ryu[:ଶ͕]], paragraph[:ϦϡɺࣗΑΓڧͦ͏ͳౕʹɺձ͍ʹ͍ͬͨͷͩͬͨɻɹ] ] script[] スクリプト(台本)
ʰԶΑΓڧౕ͍ʹɺձ͍ʹߦ͘ʱ ! ϐϯϙʔϯ Ϧϡʮ͜Μʹͪʯ ͔ͨ͠ʮ͍Ͳͳͨʯ ! Ϧϡʮ͍·ͪΐͬͱ͍͍Ͱ͔͢ʯ ͔ͨ͠ʮ͜Ε͔Βग़͔͚·͢ʯ ! Ϧϡʮޕޙग़ۈͰ͔͢ʁʯ
͔ͨ͠ʮ͍ʯ ! Ϧϡʮڧͦ͏Ͱ͢Ͷʯ ͔ͨ͠ʮͳʹ͕Ͱ͔͢ʯ ! Ϧϡʮଶ͕ʯ ! ϦϡɺࣗΑΓڧͦ͏ͳౕʹɺձ͍ʹ͍ͬͨͷͩͬͨɻɹ 台本を出力(実行結果)
何をしてるのか ラムダ式とクロージャ 可変長引数を結合してる ドメイン固有言語 - Wikipedia ラムダ式で学ぶクロージャとDSL 意外と移植性が高い!
最近読んだ本
世間には根強く 「えっコンパイラも実装したことないの」 「Lispインタプリタとか課題で実装したわー」 ! といった声がある
None
言語処理系の基礎が 完全無料で学べる!
実装してみた 出落ち!
MatzLisp!
本書中のサンプルコードは ふつうのRubyで書かれてます ! ご安心ください
_ \ヽ, ,、 `''|/ノ .|
_ | \`ヽ、| \, V `L,,_ |ヽ、) .| / ,、 / ヽYノ .| r''ヽ、.| | `ー-ヽ|ヮ | `| ヽ, ,r .| ヽ,r'''ヽ!'-‐'''''ヽ、ノ ,,,..---r'",r, , 、`ヽ、 ヾ ヽ、__/ ./ハレハ i`ヽ、 `''r`ミ_ .レ//r,,,、 レ'レハヾ, L,,_ `ヽ、 "レ, l;;;l l;;;l`i.リレ' リ ̄~~ ヽ、 ワ `"/-'`'`' `''''''''" ┼ヽ -|r‐、. レ | d⌒) ./| _ノ __ノ