derive4j
Algebraic Data Types framework
An annotation processor and framework for deriving algebraic data types and related constructs in Java.
Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, folds, optics and typeclasses.
566 stars
30 watching
50 forks
Language: Java
last commit: over 3 years ago
Linked from 3 awesome lists
algebraalgebraic-data-typesannotation-processorcatamorphismsderive4jdiscriminated-unionsexhaustiveness-checkingfoldfunctional-programmingjavajava-8lazinessopticssum-typestagged-unionsvisitorvisitor-pattern
Related projects:
| Repository | Description | Stars |
|---|---|---|
| | An extension to Derive4J that generates instances of type classes for FunctionalJava's standard libraries. | 21 |
| | Algebraic Data Types for Java implementation | 145 |
| | A comprehensive TypeScript library that provides a foundation for abstract algebra and geometric algebra using complex numbers, matrices, and higher-dimensional structures. | 107 |
| | A theorem prover and a programming language based on Homotopy Type Theory | 698 |
| | A language-agnostic way to define algebraic data types using polynomials. | 367 |
| | A tool to automatically generate Elm types and functions from Haskell definitions | 101 |
| | Automatically generates boilerplate code for Coq inductive types | 24 |
| | A Neo4j procedure for generating test data in various formats such as nodes, relationships, and values. | 9 |
| | Provides Java access to Neo4J graph databases at various levels of abstraction for complex domain modeling and querying. | 86 |
| | A collection of well-known Algebraic Data Types and their associated helper functions for functional programming in JavaScript. | 1,592 |
| | A framework for defining and composing algebraic structures in JavaScript using static functions and modules. | 771 |
| | Provides an API to create, manage, and query annotations using Java | 48 |
| | A Java-based framework for building read-write Linked Data applications based on the W3C LDP specification | 43 |
| | A JavaScript library for symbolic mathematics and algebraic computation. | 973 |
| | Algebraic data types for C99 with exhaustive pattern matching and compile-time introspection facilities. | 1,379 |