expressive-java VS record-builder

Compare expressive-java vs record-builder and see what are their differences.

expressive-java

Example of matching Scala's case class expressiveness in Java 8, Java 15 and Java 17 (by Randgalt)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
expressive-java record-builder
6 35
14 650
- -
0.0 7.3
almost 2 years ago 16 days ago
Java Java
- Apache License 2.0
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.

expressive-java

Posts with mentions or reviews of expressive-java. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-12-24.
  • Deconstructing Records in Pattern Matching - Inside Java Newscast #26
    1 project | /r/java | 3 Jun 2022
  • ExpressiveJava: Re-implementing a simple Scala interpreter in JDK 8/15/17. JDK 17 code nearly identical with use of Records + Pattern Matching + Sealed Types.
    4 projects | /r/java | 24 Dec 2021
    With JDK17 and the introduction of Record types, sealed classes/interfaces, and pattern-matching the implementation can come close to ver-batim mirroring the Scala 2 one: - Scala: https://www.scala-lang.org/old/node/56.html - JDK 17 Java: https://github.com/Randgalt/expressive-java/blob/master/java-17/src/main/java/examples/SimpleInterpreter.java
  • ExpressiveJava: Rewriting simple Scala interpreter – JDK17 code nearly identical
    2 projects | news.ycombinator.com | 12 Dec 2021
    I wanted to share this little project I found. The author has been writing Java re-implementations of the same Scala interpreter over the years as newer JDK versions & features are released.

    With JDK17 and the introduction of Record types, sealed classes/interfaces, and pattern-matching the implementation can come close to ver-batim mirroring the Scala 2 one:

    https://github.com/Randgalt/expressive-java/blob/master/java...

    Unfortunately, the Scala org website is down right now, so the original code can be viewed here for the moment:

    https://web.archive.org/web/20200103022853/https://www.scala...

    (Or also in the repo: https://github.com/Randgalt/expressive-java/blob/master/scal...)

    The final feature that is needed to really seal the deal, is part of JEP 405 for destructuring + binding to values in patterns ("Deconstruction patterns"):

    https://github.com/Randgalt/expressive-java/issues/3

    https://openjdk.java.net/jeps/405

  • Why Co–Star Uses Haskell
    7 projects | news.ycombinator.com | 5 Nov 2021
    using records and ADTs (sealed types) with pattern match "switch" and the net result is an almost verbatim translation.

    https://github.com/Randgalt/expressive-java/issues/1

    There is one ugly line which JDK18 will fix, "destructuring in pattern captures/match".

record-builder

Posts with mentions or reviews of record-builder. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-24.