A research programmer working at Julia Lab, MIT. Working on Julia's compiler technology stack, mainly around its abstract interpretation based type inference. Also a maintainer of Julia IDEs, julia-vscode and Juno.
Julia holds immense promise for a composable package ecosystem. Potential obstacles to achieving this promise include missing methods for unanticipated types, unwitting type-piracy, poor performance due to inference failures, method ambiguities, and latency due to long compilation times and/or invalidation of previously-compiled code.
This workshop will tutor developers on the use of some recently-developed tools for detecting, diagnosing, and fixing such problems.
Julia's extreme expressiveness and composability come from its dynamism – at the cost of that, a static type check of Julia code has been remained as a longstanding problem. JET.jl is a fresh approach to static analysis of such a dynamic language; it can detect type-level errors given a pure Julia script within a practical speed. In this talk we will first give an overview of its features and basic usages, and then move to a discussion of its internals, current limitations and future works.