Skip to content
View lkmcfj's full-sized avatar

Sponsoring

@soruly

Organizations

@mana9er @kobayashi-compiler

Block or report lkmcfj

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
lkmcfj/README.md

Hi there

Compilers

Recently, my interests focus on compiler optimizations. kobayashi-compiler is an optimizing compiler we built for a compiler challenge. It compiles SysY (a C-like language) to armv7. For some courses at Tsinghua University, I also added a RISC-V backend for teaching purposes.

I'm currently doing an internship at Oracle Zurich, working on GraalVM. Some of my contributions to the Graal compiler and Espresso have been merged into graal. It's always exciting to see my contributions making real-world applications faster.

Computer Systems

It's fun to dive into the low-level details of computer systems. During my undergrad, I built:

  • A RISC-V CPU written in Verilog, supporting privilege modes, interrupts, exceptions, and virtual address mapping.
  • A software implementation of a router running the RIP protocol.
  • A toy OS kernel written in Rust (rCore lab).
  • And of course, kobayashi-compiler.

Programming Languages

Computer science is about designing abstraction layers, and designing programming languages is a particularly exciting one.

  • Mdverif: A simple formal verifier for a simple language.
  • IonaLanguage: Compiles lambda calculus with abstract data types to C++ template metaprogramming.

Competitive Programming

I'm a competitive programming enthusiast. I have set problems for CCF CSP (Certified Software Professional), THUPC (Tsinghua University Invitational Programming Contest), THUWC (Tsinghua University Programming Winter Camp), and the graduate admission programming test for the CS department at Tsinghua University. I also assisted in setting problems for APIO (Asia-Pacific Informatics Olympiad) and CCF NOIP (National Olympiad in Informatics in Provinces).

Side Projects

  • mana9er: A lightweight daemon framework for Minecraft servers
  • improve-python-int: In CPython, the conversion between str and int used to have poor performance. This was a proof of concept to improve it.
  • dnspod-pyddns: A python DDNS client for DNSPod.
  • wordle-solver: A solver for finding the optimal strategy of Wordle.

Pinned Loading

  1. kobayashi-compiler/kobayashi-compiler kobayashi-compiler/kobayashi-compiler Public

    An optimizing compiler targeting armv7 and risc-v32

    C++ 64 8

  2. IonaLanguage IonaLanguage Public

    Compile a simple functional language to C++ template metaprogramming

    Python

  3. learncompiler/prj7_2020 learncompiler/prj7_2020 Public

    A study-purpose formal verifier

    C++ 3

  4. mana9er/mana9er-core mana9er/mana9er-core Public

    A scalable management tool for minecraft server

    Python 2