Google Summer of Code

Our community has identified project ideas that we believe will significantly enhance the Typelevel ecosystem. Nothing is set in stone: we may be able to adjust a project’s length and difficulty to make it the right fit for you. So if you see something here that interests you or have an idea of your own, please get in touch!

Machine learning inference in Cats Effect

We want to make it possible to deploy machine learning inference as part of a larger web service without compromising the latency of other on-going requests. The goal of this project is to create a compiler to transform a pre-trained ML model into a sequence of Cats Effect IO steps that perform inference on some input.

Prerequisites

Scala, ideally some experience with ML

Expected Difficulty

Hard but doable. Will draw on knowledge of ML and compilers.

Expected Length

Long (~ 350 hours)

Mentors

@armanbilge @djspiewak @ekrich @valencik

AI

web

programming languages

Serverless integrations for Feral

Feral is a Typelevel library for building serverless functions that currently supports AWS Lambda and Google Cloud Run Functions. We want to support more cloud providers, such as Cloudflare Workers.

Prerequisites

Scala, interest in Functional Programming, ideally experience with serverless

Expected Difficulty

Medium.

Expected Length

Medium (~ 175 hours)

Mentors

@armanbilge

cloud

programming languages

Native I/O backend for FS2 JVM

FS2 on the JVM currently implements its networking API using JDK NIO. Unfortunately this indirection incurs a non-trivial performance penalty. We want to replace the use of JDK NIO with direct calls to system I/O APIs such as epoll and kqueue.

Prerequisites

Scala, ability to read C

Expected Difficulty

Medium.

Expected Length

Long (~ 350 hours)

Mentors

@antoniojimeneznieto @djspiewak @armanbilge

operating systems

programming languages

Streaming implementation of an XQuery subset

XQuery allows for transforming XML data in a declarative way. Based on the generic streaming query engine added into the fs2-data library, write a frontend to implement a streamable subset of XQuery.

Prerequisites

Scala, ideally some experience with XQuery

Expected Difficulty

Hard.

Expected Length

Long (~ 350 hours)

Mentors

@satabin

data

streaming

programming languages

Submit Your Proposal

Are you interested in working on a GSoC project with Typelevel mentors?

send us an email