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
UFO演算子について
Search
Hirofumi Wakasugi
September 11, 2016
Programming
0
320
UFO演算子について
RubyKaigi 2016 After Party (2016-09-10)
Hirofumi Wakasugi
September 11, 2016
Tweet
Share
More Decks by Hirofumi Wakasugi
See All by Hirofumi Wakasugi
Racc Introduction
5t111111
1
430
Keep Calm and Enjoy Gachima
5t111111
3
350
Swift Functional Programming
5t111111
0
270
Middleman on Production
5t111111
0
160
名古屋Ruby会議03 高速一言感想
5t111111
3
1k
ドキュメント翻訳懺悔のLT ~進捗ダメです~
5t111111
1
610
Rubyと戯れるOSS DTM
5t111111
4
750
Rubyの拡張をCrystalで書いてみる
5t111111
0
110
YARV INTRODUCTION
5t111111
0
90
Other Decks in Programming
See All in Programming
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
870
ESLintプラグインを使用してCDKのセオリーを適用する
yamanashi_ren01
2
240
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
.NETでOBS Studio操作してみたけど…… / Operating OBS Studio by .NET
skasweb
0
120
Swiftコンパイラ超入門+async関数の仕組み
shiz
0
170
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.4k
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
930
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
240
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
6k
Flatt Security XSS Challenge 解答・解説
flatt_security
0
730
ErdMap: Thinking about a map for Rails applications
makicamel
1
630
Featured
See All Featured
Designing Experiences People Love
moore
139
23k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Become a Pro
speakerdeck
PRO
26
5.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Facilitating Awesome Meetings
lara
51
6.2k
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
How GitHub (no longer) Works
holman
312
140k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
173
51k
Transcript
6'0 ԋࢉࢠ ʹ͍ͭͯ (What's the Story) Spaceship Operator? Hirofumi Wakasugi
(@5t111111)
ϓϩάϥϚʔ Hirofumi Wakasugi (@5t111111)
4QBDFTIJQ0QFSBUPS DMBTT4J[F.BUUFST JODMVEF$PNQBSBCMF EFGJOJUJBMJ[F TUS !TUSTUS FOE
EFG PUIFS TUSTJ[FPUIFSTUSTJ[F FOE FOE w #BTJDPQFSBUPSGPSDPNQBSJOHUIFSFDFJWFSBHBJOTUBOPUIFSPCKFDU w "MTPLOPXOBTl6'0PQFSBUPSz MFBTUJO+BQBO w $MBTTFTNJYJOT$PNQBSBCMFNVTUJNQMFNFOU
*NQMFNFOUBUJPOPG w1PTJUJWFOVNCFSJGTFMGJTHSFBUFSUIBOPUIFS w;FSPJGTFMGJTFRVBMUPPUIFS w/FHBUJWFOVNCFSJGTFMGJTMFTTUIBOPUIFS DMBTT'PP ǘ EFG PUIFS SFUVSOJGTJ[FPUIFSTJ[F
SFUVSOJGTJ[FPUIFSTJ[F SFUVSOJGTJ[FPUIFSTJ[F FOE FOE GPPGPPUSVFGBMTF *UTIPVMESFUVSO
w :PVDBOXSJUFMJLFUIJTVTJOHJUTJNQMFNFOUBUJPO w -PPLTQSFUUZDPOWFOJFOU EPFTO`UJU "UJQGPSVTJOH DBTF GPPCBS XIFO
QVUTGPPJTFRVBMUPCBS XIFO QVUTGPPJTHSFBUFSUIBOCBS FMTF QVUTGPPJTMFTTUIBOCBS FOE
w :PVDBOXSJUFMJLFUIJTVTJOHJUTJNQMFNFOUBUJPO w -PPLTQSFUUZDPOWFOJFOU EPFTO`UJU "UJQGPSVTJOH DBTF GPPCBS XIFO
QVUTGPPJTFRVBMUPCBS XIFO QVUTGPPJTHSFBUFSUIBOCBS FMTF QVUTGPPJTMFTTUIBOCBS FOE ʁʁ (SFBUFSJGQPTJUJWF 0SMFTTJGQPTUJWF 0SQPTJUJWFJGQPTJUJWF 85'
4P*BMXBZTEPUIFGPMMPXJOHTUFQTXIFO* XBOUUPVTFDPNQBSJTPOPQFSBUPSTXJUINZ DMBTTFT *ODMVEFUIFNPEVMFJOBDMBTT 4UBSUXSJUJOHAEFG PUIFS FOEA
CFBOHVJTIFEUSZJOHUPSFNJOENFUPJGHSFBUFSMFTT NVTUSFUVSOQPTJUJWFOFHBUJWFOVNCFS (PPHMJOHGPSBXIJMF *UEPFTOPUXPSLʜ 6IPI*JODMVEF&OVNFSBCMFJOTUFBEPG$PNQBSBCMF
4P*UIJOL*NQMFNFOUBUJPOPG FYDFQUJPOBMMZMBDLTEFTDSJQUJWFQPXFS JO3VCZXPSME almost seems like magic numbers
*USFNJOETNFPGTPNFUIJOHMJLF JOUDPNQBSF@JOU DPOTUWPJE B DPOTUWPJE C \ SFUVSO JOU
B JOU C ^ JOUNBJO \ JOUEBUB<>\ ^ RTPSU EBUB TJ[FPG JOU DPNQBSF@JOU ^ w 0METDIPPM$JTIqBWPS w +BWB DPNQBSF5P /&5 $PNQBSF5P
w *UXPVMECFFBTJFSUPLOPXUIFDPEFT`JOUFOTJPO *BNTVSFZPVDBOVTFJGʜFMTJGʜUIPVHI *XJTI*DPVMEXSJUFMJLF DBTFGPPCBS XIFO&2 QVUTGPPJTFRVBMUPCBS XIFO(5 QVUTGPPJTHSFBUFSUIBOCBS
FMTF QVUTGPPJTMFTTUIBOCBS FOE
)BTLFMM DMBTT&RB0SEBXIFSF DPNQBSFBB0SEFSJOH EBUB0SEFSJOH-5]&2](5 ADPNQBSFA -5 0SE 0SEFSJOH DPNQBSFSFUVSOT0SEFSJOH 3VTU
QVCFOVN0SEFSJOH\ -FTT &RVBM (SFBUFS ^ 0SEFSJOH MFUSFTVMUDNQ BTTFSU@FR 0SEFSJOH-FTT SFTVMU MFUSFTVMUDNQ BTTFSU@FR 0SEFSJOH&RVBM SFTVMU DNQSFUVSOT0SEFSJOH
w 3BOHFVTJOH*/'*/*5:XPVMEXPSLXJUIDBTFFYQSFTTJPO 8IBUJGZPVTJNQMZVTFDPOTUBOUT NPEVMF0SEFSJOH (5'MPBU*/'*/*5: -5'MPBU*/'*/*5: &2 FOE DBTFGPPCBS XIFO0SEFSJOH&2
QVUTGPPJTFRVBMUPCBS XIFO0SEFSJOH(5 QVUTGPPJTHSFBUFSUIBOCBS XIFO0SEFSJOH-5 QVUTGPPJTMFTTUIBOCBS FOE
w *UEPFTOPUXPSLCFDBVTFPGUIFJSUZQFT w .BZCFJUIBTTPNFPWFSIFBE 8IBUJGUIFTFDPOTUBOUTBSF BWBJMBCMFJOHMPCBMOBNFTQBDFʜ EFG PUIFS JGTJ[FPUIFSTJ[F
0SEFSJOH(5 FMTJGTJ[FPUIFSTJ[F 0SEFSJOH&2 FMTF 0SEFSJOH-5 FOE FOE
*BNTVSFJNQMFNFOUBUJPOSFRVJSFNFOU PGMFUTZPVUPXSJUFMJLF EFG PUIFS TJ[FPUIFSTJ[F FOE *MPWFUIJTBTJUJTDMFBOBOEDPODJTFFOPVHI BTMPOH BTZPVVOEFSTUBOEJUTSFRVJSFNFOUDPSSFDUMZ
w*OBMNPTUBMMDBTFTUIFJNQMFNFOUBUJPOUIBU SFUVSOTOOJTFOPVHIBOEBMTPIBTBEWBOUBHF w.PSFEFTDSJQUJWFPQUJPOTXPVMECFWFSZXFMDPNF FTQFDJBMMZGPSOFXCJFT w*EPO`UIBWFBOZHPPEJEFBTZFU DPOTJEFSJOHJG TJOHMFUPOPCKFDUTMJLFOJMUSVFGBMTFXPSL $PODMVTJPO
5)"/,:06 w"MM3VCZ,BJHJTUB⒎TBOETQFBLFST w"MMSVCZJTUT*IBWFOFWFSFWFSNFU w XJUIFNQIBTJT %SFDPN3VCZ,BSBPLFXBTKVTU&1*$ ʜBOE!.BLF/PX+VTUGPSHJWJOHNFJOTQJSBUJPO IUUQT HJUIVCDPNDSZTUBMMBOHDSZTUBMQVMM *XPVMEBMTPMJLFUPTBZUIBOLZPVUP