dotty-cps-async VS jsoniter-scala

Compare dotty-cps-async vs jsoniter-scala and see what are their differences.

jsoniter-scala

Scala macros for compile-time generation of safe and ultra-fast JSON codecs (by plokhotnyuk)
Our great sponsors
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • Zigi - Delete the most useless function ever: context switching.
  • Scout APM - Truly a developer’s best friend
  • SonarQube - Static code analysis for 29 languages.
dotty-cps-async jsoniter-scala
8 24
123 551
- -
9.1 9.7
9 days ago 5 days ago
Scala Scala
Apache License 2.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

dotty-cps-async

Posts with mentions or reviews of dotty-cps-async. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-10-18.
  • The case against Effect Systems (e.g., the IO data type)
    2 projects | reddit.com/r/scala | 18 Oct 2022
    Hmm, you can write direct-style code with monad: https://github.com/rssh/dotty-cps-async allows this, exists support libraries exist for near all well-known effect systems: https://github.com/rssh/cps-async-connect, so you can use async/await with IO/ZIO the same as with Future. Although in IO style, any operation that mutates state is async, it's hard to write code where you should place `await` near each line. And it looks like automatic coloring is a too radical change of concepts for most functional programmers. The option to allow using <- in the direct style may be more popular, but this requires changes to the scala core. Another question - are we need effective systems to be present in each program in industrial-style development? Here I agree that mostly no.
  • New Scala 3 Codebases
    6 projects | reddit.com/r/scala | 17 Feb 2022
  • Dotty-cps-async 0.9.7 is released.
    4 projects | reddit.com/r/scala | 26 Jan 2022
    This is a generic async/await transformer for scala3 which allows using effectful monads in the direct style. URL: (https://github.com/rssh/dotty-cps-async )
  • Language-assisted Flattening
    2 projects | reddit.com/r/ProgrammingLanguages | 14 Jul 2021
    dotty-cps-async [rssh/dotty-cps-async ] with automatic coloring do something very similar in two steps. Automatic coloring defines implicit conversion F[A] => A as x => await(x)(m). The compiler inserts those awaits inside async blocks and then eliminates them later via cps-transform. Exists some limitations which we need to add for effect monads like IO (we don't want run effect twice and don't want to screw semantics of effects by extra memoizing). So, if your language has a possibility to implement effect monads, then you need a possibility to restrict using Flattenable.

jsoniter-scala

Posts with mentions or reviews of jsoniter-scala. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-10-22.

What are some alternatives?

When comparing dotty-cps-async and jsoniter-scala you can also consider the following projects:

circe - Yet another JSON library for Scala

json4s - JSON library

DSL-JSON - High performance JVM JSON library

Play JSON - The Play JSON library

jackson-module-scala - Add-on module for Jackson (https://github.com/FasterXML/jackson) to support Scala-specific datatypes

spray-json - A lightweight, clean and simple JSON implementation in Scala

Jackson - Core part of Jackson that defines Streaming API as well as basic shared abstractions

None Is Not Null - JSON typeclasses that know the difference between null and absent fields

jawn - Jawn is for parsing jay-sawn (JSON)

scala-json - Compile-time JSON marshaling and abstraction for Scala, Scala Native and Scala.js

borer - Efficient CBOR and JSON (de)serialization in Scala

sbt-json - sbt plugin that generates Scala case classes for easy, statically typed and implicit access of JSON data e.g. from API responses