You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: "Protosearch offers an in-browser search experience for documentation. This project aims to add support for Scaladoc, the documentation system for Scala code. As a result of this work, searching for `flatMap` on the cats-effect documentation, for example, would return hits from the tutorial and the relevant method in the Scaladoc."
1
+
# title
2
+
# description: What is it about? What need does it address? What is its final goal?
3
+
# prereqs: necessary prior knowledge (typically knowing Scala, and maybe other things)
4
+
# difficulty: Easy / Medium / Hard. what will the tricky parts be?
5
+
# length: short / medium / long (90 / 175 / 350 hours)
6
+
# mentors: github handles
7
+
# categories: AI / data / dev tools / apps / cloud / media / operating systems / programming languages / science / security / social / web
8
+
9
+
- title: Machine learning inference in Cats Effect
10
+
description:
11
+
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.
12
+
prereqs: Scala, ideally some experience with ML
13
+
difficulty: Hard but doable. Will draw on knowledge of ML and compilers.
description: "The [msgpack](https://msgpack.org/) data format allows for efficient binary serialization of data. It would be great to have the ability to parse, transform, and emit data in a streaming fashion using FS2 in the [fs2-data](https://fs2-data.gnieh.org) library."
20
+
prereqs: Scala, ideally some experience with FS2 and parsing
21
+
difficulty: Medium.
22
+
length: medium
23
+
mentors: [satabin, ybasket]
24
+
categories: [streaming, programming languages]
25
+
26
+
- title: Scaladoc Search in Protosearch
27
+
description:
28
+
Protosearch offers an in-browser search experience for documentation. This project aims to add support for Scaladoc, the documentation system for Scala code. As a result of this work, searching for `flatMap` on the cats-effect documentation, for example, would return hits from the tutorial and the relevant method in the Scaladoc.
29
+
prereqs: Scala
30
+
difficulty: Medium.
31
+
length: long
32
+
mentors: [valencik]
3
33
categories: [data, web]
4
-
- title: "Fluent library for files and processes"
5
-
description: "The `fs2.io.file` package is powerful, but using it in small scripts can involve boilerplate. This project aims to create a fluent library for working with files and processes in Scala. A particular focus will be easy integration with the Typelevel Toolkit"
6
-
categories: [libraries]
34
+
35
+
- title: Fluent library for files and processes
36
+
description:
37
+
FS2 has powerful APIs for streaming I/O but using it in small scripts can involve boilerplate. This project aims to create a fluent library for working with files and processes in Scala. A particular focus will be easy integration with the [Typelevel Toolkit](https://typelevel.org/toolkit).
38
+
prereqs: Scala, interest in Functional Programming
39
+
difficulty: Medium.
40
+
length: medium
41
+
mentors: [toniogela, zetashift]
42
+
categories: [programming languages]
43
+
44
+
- title: Serverless integrations for Feral
45
+
description:
46
+
Feral is a Typelevel library for building serverless functions that currently supports AWS Lambda. We want to support other cloud providers, such as Google, Cloudflare, and Vercel.
47
+
prereqs: Scala, interest in Functional Programming, ideally experience with serverless
48
+
difficulty: Medium.
49
+
length: medium
50
+
mentors: [armanbilge]
51
+
categories: [cloud, programming languages]
52
+
53
+
- title: Native I/O backend for FS2 JVM
54
+
description:
55
+
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`.
description: A GSoC 2023 project prototyped a new networking I/O layer for FS2 based on the Linux io_uring syscall interface that improved the performance of HTTP servers by more than 3x. Now we need help to make this production-ready by writing code to interoperate with io_uring from the JVM.
64
+
prereqs: Java or Scala, ideally some experience with C and JNI
- title: "Streaming implementation of an XQuery subset"
71
+
description: "XQuery allows for transforming XML data in a declarative way. Based on the generic streaming query engine added into the [fs2-data](https://fs2-data.gnieh.org) library, write a frontend to implement a streamable subset of XQuery."
72
+
prereqs: Scala, ideally some experience with XQuery
0 commit comments