Site-33 by thautwarm
Posts: Programming/编程; Life/生活.
Links
GitHub | Julia Discourse | PureScript Discourse | Zhihu | |
---|---|---|---|---|
I'm a software engineer and a programming language enthusiast.
I earned my graduate degree in computer science from the University of Tsukuba, Japan. I was the member of the Programming Logic Group.
Academic Records:
- Quick and Reusable Code Generation for Idris, PPL 2020, repo
- JIT for Dynamic Programming Languages Considered Easy, Lambda Days 2021 & slides, repo
- Typed BNF: Backend-independent Semantic Actions, PPL 2022, repo
Typed BNF has emerged as an essential technique for TyMLang, a MATLAB-compatible language that I lead the development of at TongYuan. This language seamlessly supports critical MATLAB open-source libraries, such as Delta-Sigma. Its usability significantly surpasses that of Octave, Scilab, and other MATLAB-like alternatives.
Skills
Programming Languages
- Python: Deep internal-level expertise
- Haskell/PureScript: Proficient
- OCaml: Proficient
- Julia: Member, expert, alternative backend implementer, and "macro wizard"
- C: Proficient, with specialization in memory management and Foreign Function Interface (FFI) integration
- C#: Proficient
- F#: Proficient
- Java: Industry-level familiarity
- TypeScript: Industry-level familiarity
- Dart: Proficient, with specialization in Flutter
- Idris: alternative backend implementer
Open-source
Julia
I am a member of the Julia organization and have contributed to the ecosystem of Julia. The most notable packages I developed for Julia are:
- MLStyle.jl: extensible pattern matching for Julia
- CanonicalTraits.jl: a prototype for Haskell-like type classes in Julia
- GeneralizedGenerated.jl: allow closures in generated functions
I also developed these Julia-related packages for the TongYuan company:
- ObjectOriented.jl: full object-oriented programming support for Julia
- jnumpy: Python C extensions powered by Julia; JNumPy at HackerNews.
Python
I have developed extensive expertise in Python, actively contributing to its implementation. My contributions include proposing PEP 622, which introduced a new syntax for pattern matching. This syntax has been integrated into Python from Python 3.10. I developed Moshmosh to support pattern matching for Python before the proposal.
Python implementations made/lead by me:
- UnityPython: An efficient Python implementation in C#, running on every platform via Unity IL2CPP. The language itself is completed, and the standard library is under development.
- YAPyPy: This project comes from a brainstorming in PyCon China 2018. YAPyPy is a Python 3.6 implementation in Python, including a full Python parser and a bytecode compiler. The project has been verified to support a wide range of libraries in Python 3.6, including NumPy and Scikit-learn.
PureScript
I developed PureScript Python, the Python codegen target for [PureScript].
Career
Microsoft
From 2017 to 2019, following the completion of my undergraduate courses as a sophomore, I worked as an intern at Microsoft. During my internship, I was part of the Microsoft Research Asia team and contributed to the Microsoft GraphEngine.
TongYuan
Besides TyMLang, I have also contributed to many other products in TongYuan.
Under my leadership, the programming language team at TongYuan has developed the world's first practical Julia AOT (Ahead-of-Time) compiler. This compiler is capable of efficiently compiling the Julia Base along with key community packages such as DataStructures.jl, Unitful.jl, FFTW.jl, and others. It produces compact binaries — approximately 2MB for executables or shared libraries for average scientific projects, bundled with all necessary artifacts.