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
RaaP
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ksss
May 08, 2024
Programming
750
0
Share
RaaP
ksss
May 08, 2024
More Decks by ksss
See All by ksss
Railsの型ファイル自動生成における課題と解決
ksss
4
5.3k
RBS generation framework using Rack architecture
ksss
1
7.8k
mrubyでruby/specを走らせてみた結果www
ksss
1
2.5k
Rubyに型があると便利か
ksss
4
4.7k
A New Testing Framework Rgot
ksss
0
1.3k
mruby hacking guide
ksss
7
2k
Other Decks in Programming
See All in Programming
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
130
Angular Signal Forms
debug_mode
0
110
How Swift's Type System Guides AI Agents
koher
0
270
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
180
瑠璃の宝石に学ぶ技術の声の聴き方 / 【劇場版】アニメから得た学びを発表会2026 #エンジニアニメ
mazrean
0
250
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
330
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
270
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
140
ファインチューニングせずメインコンペを解く方法
pokutuna
0
310
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
180
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
3
270
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.5k
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
170
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
520
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
The Language of Interfaces
destraynor
162
26k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
260
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
110
Transcript
ksss Run your RBS like a testing code. RBS as
a Property
RBS as a Property ✒ RBS class MyClass def my_method:
(Integer, Integer) -> Integer end
RBS as a Property 🍎 Property 100.times do int1 =
Random.rand(100) int2 = Random.rand(100) result = MyClass.new.my_method(int1, int2) assert_kind_of Integer, result end
RBS as a Property ✒🍎
RBS as a Property Gener a te test c a
se by RBS And execute code a utom a tic a lly
https://github.com/ksss/raap This is the RaaP
Demo
Edit RBS (Add one overload) class MyClass def my_method: (Integer,
Integer) -> Integer | (Float, Float) -> Float end
You can run RBS instantly!
If the RBS is wrong? class MyClass def my_method: (Integer,
String) -> Integer end
It detects failures and also displays reproduction codes.
Support Union type class MyClass def my_method: (0 | 1
| 2, 3 | 4 | 5) -> Integer end
Choose one of the Unions and run it. With coverage!
RBS as a Property RaaP