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
PHPでも記号プログラミング
Search
Ryu
September 14, 2019
Programming
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PHPでも記号プログラミング
僕が入門したよって話
Ryu
September 14, 2019
More Decks by Ryu
See All by Ryu
Sotuken
s17001
0
1.1k
フレームワークの気持ちになりたかった
s17001
0
390
Quine雑日記
s17001
0
2k
eve hackers champloo
s17001
0
1.1k
記号プログラミングの集大成
s17001
0
6.2k
JSで読み取れる記号を吐くコード
s17001
2
310
making pokemondex !
s17001
0
100
create thinkingface
s17001
0
1.9k
Other Decks in Programming
See All in Programming
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
250
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
150
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
200
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
230
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
250
Oxcを導入して開発体験が向上した話
yug1224
4
350
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
430
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
570
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
440
Oxlintのカスタムルールの現況
syumai
6
1.2k
Agentic UI
manfredsteyer
PRO
0
210
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
6.6k
Featured
See All Featured
Building Applications with DynamoDB
mza
96
7.1k
So, you think you're a good person
axbom
PRO
2
2.1k
Accessibility Awareness
sabderemane
1
150
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
180
Chasing Engaging Ingredients in Design
codingconduct
0
230
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Writing Fast Ruby
sferik
630
63k
Deep Space Network (abreviated)
tonyrice
0
220
GraphQLとの向き合い方2022年版
quramy
50
15k
Ruling the World: When Life Gets Gamed
codingconduct
0
270
Transcript
ه߸ΤϞ͍ ه߸ϓϩάϥϛϯά ΤϞ͍ Ryuichi Iha (@Ryu1__1uyR)
͜ΜʹͪΘ
‘ΓΎ͏’͍͍ͬͯ·͢
ΓΎ͏͍͍ͬͯ·͢ • ໘ന͍ϓϩάϥϜΛॻ͘ͷ͕͖ • ීஈJavaScriptΑ͘ॻ͍ͯΔ • ϢχίʔυͷΈ(ֆจࣈपΓ)͕͖͢ • ࠷ۙ͘͢͝HͳຊΛಡΈ࢝Ίͨ •
Α͘ه߸റΓͰίʔσΟϯάͯ͠Δ (ࣗݾղऍ) ※HaskellͷຊͩΑ @Ryu1__1uyR
໘ന͍ϓϩάϥϜ @Ryu1__1uyR
໘ന͍ϓϩάϥϜ @Ryu1__1uyR ແݶ࣮ߦͰ͖ΔQuine
໘ന͍ϓϩάϥϜ @Ryu1__1uyR
ΑΖ͘͠Ͷ @Ryu1__1uyR
ͯ͞
Perlͷ͓͠·ͤΜ
PHPͷ͓Λ͠·͢
Ͱ
None
PHP࣮࣭Perl
ηʔϑʂ
ຊ
ຊ
PHPΛॻ͍͍ͯΔ ͋Δͷ͜ͱ
echo ‘r’ & ‘y’;
// p
None
Ͳ͏Β ASCIIcodeͷ ཧੵͬΆ͍
ͭ·Γ
‘r’ & ‘y’;
01110010 : r 01111001 :y 01110000 :p and
͓ʁ
ͦ͏͍ɺrͱyͬͯ
Array͔Β ͱΓͩͤΔͳ…
Array ه߸Ͱ࡞ΕΔʂʂ
͜ΕͰจࣈྻͷArray
‘r’ & ‘y’;
$__[!!_] & $__[-!!_]; ͜Ε͖ͬ͞ͷม
!!_ ͱ͔ -!!_
ܕΩϟετ
var_dump( 0 . '1'); ͜Εࣈ ͜Εจࣈ
string(2) "01" ͜Ε0͕จࣈʹܕ͔ͬͯʹม͞ΕͯΔ
͜ΕͰ४උͬͨ
ͷͰ
ͪΐͬͱPerlΛ࡞͖ͬͯͨ
01010000 01100101 01110010 01101100 Perl
P
‘p’ & ’T’ 01110000 01010100
p
‘r’ & ’y’ 01110010 01111001
T
‘r’ ^ _ ^ ‘y’ 01110010 01111001 01011111
‘p’ & ’T’ 01110000 01010100
(‘r’ & ’y’) & (‘r’ ^ _ ^ ‘y’)
ه߸Ͱॻ͘ͱ
None
e = ‘p’ ^ ’T’ | ‘A’
r Array͔Β
l = ‘A’ ^ ‘r’ ^ _
ͦΕͧΕ
$$_ = $___ ^ $____ | $__[!_];
$__[!!_]
$$__ = $__[!_] ^ $__[!!_] ^ _ ;
Ͱ͖ͨʂʂʂʂ
࣮ߦͯ͠ΈΑ͏ʂʂʂ
λʔϛφϧ
ͪͳΈʹJSͰॻ͘ͱ
[__,_]=[-~-~[-~[]],[...{}+[]][(-~-~[-~[]]+-~-~[- ~[]])- -~[]]+[...{}+[]][-~[]]+([]['']+[])[-~[]]+ (([]==[])+[])[(-~-~[-~[]])]+(-~[]/[]+[])[(-~-~[- ~[]]+-~-~[-~[]])]+(!![]+[])[-~[]]+([]['']+[])[+ []]+[...{}+[]][(-~-~[-~[]]+-~-~[-~[]])- -~[]]+(!! []+[])[+[]]+[...{}+[]][-~[]]+(!![]+[])[-~[]]];[][_] [_]((!![]+[])[-~[]]+(!![]+[])[__]+(!![]+[])[+[]]+ (!![]+[])[-~[-~[]]]+(!![]+[])[-~[]]+([]['']+[])[-
~[]]+' "'+'\\' +([]['']+[])[[]-[]] +'{' +(-~[]+[] +-~[]>>-~[])+([]-[]+[])+ '}'+'"')()+(!![]+[])[- ~-~[-~[]]]+(!![]+[])[-~[]]+(![]+[])[-~[-~[]]]
$__=$_[].=$_; $___ = $__[!!_] & $__[-!!_]; $____ = $__[!!_] ^
_ ^ $__[-!!_]; $$$___.=$___ & $____; $$_ = $___ ^ $____ | $__[!_]; $$$___ .= $$_; $$$___ .= $__[!!_] ; $$__ = $__[!_] ^ $__[!!_] ^ _ ; $$$___ .= $$__; echo $$$___ ;
PHP,JSه߸Ͱॻ͚Δ
όοΫΤϯυϑϩϯτ ه߸Ͱॻ͚Δ
ه߸͚ͩͰWEBΞϓϦ ࡞ΕΔ͔͠Εͳ͍ʂʂ
ه߸͚ͩͰWEBΞϓϦ ࡞ΕΔ͔͠Εͳ͍ʂʂ emotional
͓ΘΓ ɹऴ ɹ੍࡞ɾஶ࡞ ɹᴸᴸᴸᴸᴸ R Y U @Ryu1__1uyR