I'm a computer scientist interested in type theory, compilers, formal verification and programming language theory (and practice!). In the past, I have also been into game development, computer graphics and networking. I'm very focused on correctness of programs and care a lot about clean designs and code. However, from time to time, I also like to do hackathon-like experiments and try moving fast and breaking things. Outside of work, I like to explore and learn Catholic theology and philosophy. I also really like hiking and skiing.
I am working on creating a library ecosystem for Enso.
I was conducting tutorials in Program Semantics and Verification.
Worked on various machine learning and computer vision projects.
I was working on a VR game in UE4, mostly dealing with networking.
A database package (specialized input fields in JavaFX, data-storage fields, query helpers) and an application for inputting and searching through a database of historic birthrecords. Soon to be published in a scientific journal devoted to local history.
I was responsible for development and administration of a charity auction website with backend written in Python + Flask running on Google App Engine. Frontend used Bootstrap.
Master's thesis: Formal foundations for Generalized Algebraic Data Types in Scala
Findings from the thesis were later published as a part of a paper in the 2022 ACM SIGPLAN OOPSLA conference: A
case for DOT: theoretical foundations for objects with pattern matching and GADT-style reasoning.
Working on formal foundations of GADTs and learning more about formal verification, I have created a formal model for a simple lambda calculus modeling aspects of Scala macros. I was also taking many machine-learning focused classes.
Bachelor's thesis: TensorFlow binding for Luna visual programming language
I was a lead programmer in this project. We aimed to create a digital version of a card game (called Trach) we like to play that can be played in the browser. We've used C++ for the backend and jQuery for front-end prototype. Later we decided to rewrite the backend into Kotlin, as C++ turned out to be too low-level for this project.C++ repository
A simple arcade game about endless mazes, inspired by Super Hexagon's dynamics and appearance. Written in C++ and SFML.Check it out
A simple to use open source database frontend written in Scala and JavaFX intended for historians gathering data like parish registers. Will allow for customizing the database model and editor view, searching and running queries that collect various statistics. Currently under development.Check out the repository
I've been experimenting with voxel rendering for a long time. Most of the experiments were in OGRE engine (C++): cubic voxels in a sparse octree, smooth voxels on a grid. I experimented with raytracing signed distance fields in GLSL and implemented cubic voxels in pure OpenGL as well as Unreal Engine 4 using Procedural Mesh Component.Showcase of one of the iterations
A simple experimental multiplayer game in HTML5/JS and Node.JS. The project is suspended, but I plan to rewrite it in other language (Kotlin?) and use it for experiments with NPC AI programming.View repository
An Android app that can remind you of everyday lecture and keep track of your progress in each of the books. Not released due to licensing (may change in the future).