Yusuke Endoh
Yusuke Endoh

'A full-time MRI committer at Cookpad, Inc. He has been interested in testing, analyzing, abusing of Ruby. He is an advocate of "transcendental programming" that creates a useless program like this bio. (_)'.yield_self{|s|eval(t=%q(puts"'#{s.sub(?,?+?_)}'.yield_self{|s|eval(t=%q(#{t}))}"))}

Type Profiler: a Progress Report of a Ruby 3 Type Analyzer

Type Profiler is a type inference tool for plain Ruby code. It analyzes Ruby code that has no type information and guesses a type of the modules and methods in the code. The output will serve as a signature for external type checkers like Sorbet and Steep. Since 2019, we have been developing the tool as one of the key features for Ruby 3 static analysis, and now it works with some practical applications. In this talk, we briefly explain what and how Type Profiler works, present a roadmap and progress of the development, and discuss how useful it is for practical applications with some demos.