Working on Dotty, a next generation compiler for Scala. The focus is mainly on simplification. We remove extraneous syntax, and try to boil down Scala’s types into a smaller set of more fundamental constructors. The theory behind these constructors is researched in DOT, a calculus for dependent object types.
I reimplemented error handling to allow for amazing error messages that tell you what went wrong, offer fixes and give concrete examples using your own code as example.
I wrote a documentation compiler from scratch - and enabled it to be much more than just creating API reference like in the previous generation. It is now a full-blown static site generator, where you can cross reference between code and documentation; which makes sure that you both cater to your users and contributors - without duplication.
As release manager for the project, I am also responsible for developing and implementing a release strategy, guiding our team towards the MVP and keeping the community informed via talks and workshops.
Mentoring student on improvements to documentation compiler. Including type-safe templating engine and compiled documentation - making sure the code examples in your documentation actually compile, ensuring that your examples are always up to date with the released code.
Working on the next generation Scala compiler - dotty - and the tooling surrounding it.
The majority of the work consisted of identifying analyzing and fixing issues in the compiler. Major contributions include partial evaluation of statically known function results, implementing a REPL based on Ammonite and laying the groundwork for the next generation documentation tool dottydoc.
Master's Thesis: Image Processing Across Multiple Interconnected System-on-Chips
Developed a Linux kernel performance indexing framework, measuring relative performance difference in key parts of the kernel using Python.
Implemented reference counting in Axis's video memory driver for debug purposes. It identified a potential deadlock on its first day of service.
Researched and implemented GPU use cases for Axis's embedded systems using C and OpenGLES.
Built a system for cataloging and maintaining test data. Making more than a terabyte of data not previously cataloged, searchable.
Developed an ordering system and API for Malmö's largest taxi company using Scala, Akka and PostgreSQL. Enabling users to order cabs and track their location in real time.
Developed the second version of the taxi company's iOS app.
Project manager for iOS & Android development on taxi apps.
Data Structures, Abstraction and Design using Java
Programming and Databases
Computer Organization, taught students the basics of computer architecture, assembly and real time systems.
Developed the companion app and backend for a coffee bar and startup incubator. Enabling booking of meeting rooms, ordering products from the bar, Wi-Fi access as well as invoicing.
Webmaster and developer for the daily newspaper Skånska Dagbladet