Trying to decide on Scala or Kotlin

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/scala

Our great sponsors
  • Scout APM - Less time debugging, more time building
  • SonarLint - Clean code begins in your IDE with SonarLint
  • SaaSHub - Software Alternatives and Reviews
  • ZIO

    ZIO — A type-safe, composable library for async and concurrent programming in Scala

    If you want to use Scala then I would use something like ZIO as it is the closest to an FP application framework.

  • Vert.x

    Vert.x is a tool-kit for building reactive applications on the JVM

    Another option that I would strongly consider is Vert.x. It allows you to mix/match languages and could be a simple and risk-free way to introduce FP concepts into an application.

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • potassium

    A framework for writing robot software with functional programming in Scala

    Whoa! Never expected a discussion about FIRST here! My team in high-school was actually the first (and only afaik) to use Scala to program their robots. We developed a functional framework for writing robot code (https://github.com/Team846/potassium) and even contributed support for 32-bit / ARM targets to Scala Native so we could compile our code to native binaries ahead of time. Our 2018 robot ran Scala Native the entire competition season https://github.com/Team846/code-2018.

  • code-2018

    Team 846's code base for their 2018 robot

    Whoa! Never expected a discussion about FIRST here! My team in high-school was actually the first (and only afaik) to use Scala to program their robots. We developed a functional framework for writing robot code (https://github.com/Team846/potassium) and even contributed support for 32-bit / ARM targets to Scala Native so we could compile our code to native binaries ahead of time. Our 2018 robot ran Scala Native the entire competition season https://github.com/Team846/code-2018.

  • kapuchin

    Type-safe, cross-platform robotics framework for real-time control and the orchestration of high-level autonomous behavior.

    Yeah, the team spent their focus on maintaining a Kotlin framework (https://github.com/Team846/kapuchin) after the switch. But Potassium was designed to be very FRC-agnostic (only ~10% of the code depends on WPILIB) so most components still work out of the box.

  • cats-effect

    The pure asynchronous runtime for Scala

    Cats Effect is a high-performance, asynchronous, composable framework for building real-world applications in a purely functional style https://typelevel.org/cats-effect/

  • cats

    Lightweight, modular, and extensible library for functional programming.

    Cats is a library which provides abstractions for functional programming in the Scala programming language. The name is a playful shortening of the word category. https://typelevel.org/cats/

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts