An open API service indexing awesome lists of open source software.

Projects in Awesome Lists tagged with algebraic-data-types

A curated list of projects in awesome lists tagged with algebraic-data-types .

https://github.com/gcanti/fp-ts

Functional programming in TypeScript

algebraic-data-types functional-programming typescript

Last synced: 09 Sep 2025

https://gcanti.github.io/fp-ts/

Functional programming in TypeScript

algebraic-data-types functional-programming typescript

Last synced: 08 Apr 2025

https://github.com/fluture-js/fluture

๐Ÿฆ‹ Fantasy Land compliant (monadic) alternative to Promises

algebraic-data-types async cancellation control-flow fantasy-land fluture functional-programming future monad promise sanctuary

Last synced: 13 May 2025

https://github.com/fluture-js/Fluture

๐Ÿฆ‹ Fantasy Land compliant (monadic) alternative to Promises

algebraic-data-types async cancellation control-flow fantasy-land fluture functional-programming future monad promise sanctuary

Last synced: 16 Mar 2025

https://github.com/origamitower/folktale

[not actively maintained!] A standard library for functional programming in JavaScript

algebraic-data-types functional javascript

Last synced: 23 Mar 2025

https://github.com/gigobyte/purify

Functional programming library for TypeScript - https://gigobyte.github.io/purify/

algebraic-data-types codec decode either fantasy-land functional-programming functor maybe monad option-type result-type typescript

Last synced: 13 May 2025

https://github.com/enkimute/ganja.js

:triangular_ruler: Javascript Geometric Algebra Generator for Javascript, c++, c#, rust, python. (with operator overloading and algebraic literals) -

algebraic-data-types clifford-algebras complex-numbers cplusplus csharp geometric-algebra javascript operator-overloading python quaternion-algebra rust

Last synced: 15 May 2025

https://gigobyte.github.io/purify/

Functional programming library for TypeScript - https://gigobyte.github.io/purify/

algebraic-data-types codec decode either fantasy-land functional-programming functor maybe monad option-type result-type typescript

Last synced: 02 Sep 2025

https://github.com/solodon4/mach7

Functional programming style pattern-matching library for C++

adt algebraic-data-types pattern pattern-matching variant visitor visitor-pattern

Last synced: 16 May 2025

https://github.com/solodon4/Mach7

Functional programming style pattern-matching library for C++

adt algebraic-data-types pattern pattern-matching variant visitor visitor-pattern

Last synced: 15 Mar 2025

https://github.com/fantasyland/static-land

Specification for common algebraic structures in JavaScript based on Fantasy Land

adt algebra algebraic algebraic-data-types fantasy-land functional-programming functor monad monoid specification static-land

Last synced: 04 Apr 2025

https://github.com/derive4j/derive4j

Java 8 annotation processor and framework for deriving algebraic data types constructors, pattern-matching, folds, optics and typeclasses.

algebra algebraic-data-types annotation-processor catamorphisms derive4j discriminated-unions exhaustiveness-checking fold functional-programming java java-8 laziness optics sum-types tagged-unions visitor visitor-pattern

Last synced: 12 Apr 2025

https://github.com/adam-mcdaniel/sage

A programming language that's wise beyond its bytes!๐ŸŒฑ๐ŸŒฟ๐Ÿชด

algebraic-data-types c compiler frontend mobile pattern-matching polymorphism portable rust structural-typing turing-tarpit wasm web x86-64

Last synced: 08 Apr 2025

https://github.com/thma/whyhaskellmatters

In this article I try to explain why Haskell keeps being such an important language by presenting some of its most important and distinguishing features and detailing them with working code examples. The presentation aims to be self-contained and does not require any previous knowledge of the language.

algebraic-data-types anonymous-functions declarative-programming explicit-side-effects first-class-functions foldable folding function-composition functional-programming functor haskell higher-order-functions lazy-evaluation list-comprehension mapping monads partial-application pattern-matching polymorphic-types type-classes

Last synced: 05 Apr 2025

https://github.com/thma/WhyHaskellMatters

In this article I try to explain why Haskell keeps being such an important language by presenting some of its most important and distinguishing features and detailing them with working code examples. The presentation aims to be self-contained and does not require any previous knowledge of the language.

algebraic-data-types anonymous-functions declarative-programming explicit-side-effects first-class-functions foldable folding function-composition functional-programming functor haskell higher-order-functions lazy-evaluation list-comprehension mapping monads partial-application pattern-matching polymorphic-types type-classes

Last synced: 30 Apr 2025

https://github.com/thautwarm/mlstyle.jl

Julia functional programming infrastructures and metaprogramming facilities

algebraic-data-types pattern-matching scalability statically-generated syntax-sugar

Last synced: 16 May 2025

https://github.com/witchcrafters/algae

Bootstrapped algebraic data types for Elixir

adt algebraic-data-types data-structures dsl

Last synced: 16 May 2025

https://github.com/jspahrsummers/adt

Algebraic data types for Python (experimental, not actively maintained)

algebraic-data-types python3 sum-types tagged-unions

Last synced: 06 Apr 2025

https://github.com/spotify/dataenum

Algebraic data types in Java.

algebraic-data-types java

Last synced: 09 Apr 2025

https://github.com/jasonkuhrt/alge

Type safe library for creating Algebraic Data Types (ADTs) in TypeScript. ๐ŸŒฑ

adt algebraic-data-types data typescript

Last synced: 16 May 2025

https://github.com/functionalland/functional

Common Functional Programming Algebraic data types for JavaScript that is compatible with most modern browsers and Deno.

algebraic-data-types browser catamorphism category-theory deno denoland either either-monad fold functional functional-programming functor io-monad maybe maybe-monad monoid task task-monad

Last synced: 10 Apr 2025

https://github.com/gcanti/fp-ts-codegen

TypeScript code generation from a haskell-like syntax for ADT. Playground:

algebraic-data-types fp-ts typescript

Last synced: 03 Jul 2025

https://github.com/roger-luo/moshi.jl

nextgen MLStyle: Generic Algebraic Data Type + Pattern Match

algebraic-data-types julia pattern-matching sum-types

Last synced: 10 Oct 2025

https://github.com/blackhole89/macros

A more powerful C/C++ preprocessor.

algebraic-data-types c cplusplus haskell macros preprocessor

Last synced: 28 Sep 2025

https://github.com/mknejp/dotvariant

A type-safe and space-efficient sum type for C# (comparable to discriminated unions in C or C++)

algebraic-data-types csharp csharp-sourcegenerator discriminated-unions functional sum-types union variant

Last synced: 17 Apr 2025

https://github.com/qqwy/elixir-fun_land

Algebraic Data Types for Elixir: Both functional and fun.

adt algebraic-data-types elixir elixir-lang fun-land monad

Last synced: 12 Dec 2025

https://github.com/cyrus-/typy

A fragmentary bidirectional type system as a Python library

algebraic-data-types functional-language pattern-matching programming-language python

Last synced: 15 Sep 2025

https://github.com/alexsasharegan/safe-types

Type safe utils inspired from the Rust language for writing better TypeScript/Flow.

algebraic-data-types combinatorics flow javascript monad rust safety typescript

Last synced: 08 Sep 2025

https://github.com/fogfish/golem

pure functional and generic programming for Go

algebraic-data-types functional-programming golang golang-generics

Last synced: 10 Apr 2025

https://github.com/mercari/remotedatak

Algebraic data type (ADT) to represent the state of data that is loading from/to remote sources/destinations

adt algebraic-data-types android functional-programming java kotlin kotlin-android kotlin-library remote-data remotedata

Last synced: 09 May 2025

https://github.com/werediver/sum_types.dart

A code generator enabling sum-types in Dart

algebraic-data-types code-generation dart flutter sum-types

Last synced: 24 Oct 2025

https://github.com/usethesource/vallang

Generic immutable recursive data representation API targeted at source code models and more.

algebraic-data-types biginteger database functional graphs library maps rational-numbers relational-algebra serialization sets

Last synced: 12 Aug 2025

https://github.com/libmir/mir-core

Base software building blocks: Algebraic types (aka sumtype/tagged union/variant), universal reflection API, basic math, and more.

algebraic-data-types mir tagged-unions

Last synced: 22 Jun 2025

https://github.com/mmottl/aifad

AIFAD - Automated Induction of Functions over Algebraic Data Types

algebraic-data-types decision-trees machine-learning ocaml

Last synced: 28 Oct 2025

https://github.com/vitorluizc/bitty

๐Ÿ—ƒ A mono-repository with functional programming helpers, algebraic data types, util functions, types and even some micro frameworks in TypeScript.

algebraic-data-types animation functional-programming maybe types typescript

Last synced: 07 Oct 2025

https://github.com/phenax/enum-fp

Functional Enum type / Sum type for javascript with simple pattern matching

algebraic-data-types enum functional-programming js sum-types

Last synced: 14 Apr 2025

https://github.com/davidmarne/dart_meta_types

a code gen solution for defining sealed classes, data classes, and enum classes for dart.

algebraic-data-types dart dartlang data-class flutter union-types value-types

Last synced: 21 Sep 2025

https://github.com/facile-it/mutoid

Reactive library for data fetching, caching, state management

algebraic-data-types fp-ts functional-programming io-ts isomorphic react rxjs typescript

Last synced: 22 Jun 2025

https://github.com/jaredly/j3

Another attempt to realize my programming language

algebraic-data-types algebraic-effects lisp pure

Last synced: 05 May 2025

https://github.com/plume-lang/plume

Plume is a lightweight programming language that aims to be portable, powerful and easy to learn.

algebraic-data-types compiler functional-programming haskell imperative-programming lightweight programming-language traits

Last synced: 13 Aug 2025

https://github.com/functionalland/functional-io

IO methods as valid Task monads perfect to write great point-free software in JavaScript that is compatible with most modern browsers and Deno.

algebraic-data-types deno denoland filesystem functional functional-programming functor monad task-monad

Last synced: 18 Mar 2025

https://github.com/lapets/uxadt

Universal (cross-language) extensible representation for algebraic data type instances.

adt adts algebraic-data-types embedded-language functional-programming library pattern-matching

Last synced: 14 Jul 2025

https://github.com/davidchase/elmentary

Your one-stop shop for Algebraic Data Types (ADT) in elm :deciduous_tree:

adts algebraic-data-types elm functional-programming monads monoid

Last synced: 11 Apr 2025

https://github.com/aiya000/hs-algebra

Test algebra type class by QuickCheck.

algebra algebraic-data-types haskell

Last synced: 16 Jun 2025

https://github.com/mverleg/java-result

Algebraic Result type in Java 15+, return type for oprations that can fail

algebraic-data-types error-handling java jvm result sealed-class types

Last synced: 13 Apr 2025

https://github.com/choonkeat/sumtype-go

Fastest and simplest pattern matching sum types in Go. Don't be jealous of Rust anymore.

algebraic-data-types codegenerator golang result-type sumtypes tagged-unions union-types

Last synced: 12 Jul 2025

https://github.com/iansinnott/shirt

๐Ÿ‘• Put a shirt on that data! Simple algebraic data types

algebraic-data-types fp monad

Last synced: 02 Jul 2025

https://github.com/zeta611/type-safe-programming

SLConf 2024: ํƒ€์ž…์œผ๋กœ ์•ˆ์ „ํ•˜๊ฒŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜๊ธฐ

ad-hoc-polymorphism algebraic-data-types beamer generalized-algebraic-data-type parametric-polymorphism polymorphism rust simply-typed-lambda-calculus subtype-polymorphism system-f type-system universal-type

Last synced: 21 Jun 2025

https://github.com/melbournedeveloper/nadz

Carefully crafted monads, such as Result and Option for exhaustive pattern matching in Dart.

algebraic-data-types dart flutter monads result-object

Last synced: 10 Apr 2025

https://github.com/fluture-js/callgebra

The little algebra of callbacks

algebraic-data-types callbacks functional-programming

Last synced: 10 Apr 2025

https://github.com/cpressey/destructorizers

The destructorizer for booleans is quite popular. It's called "if"

algebraic-data-types cpressey-theory destructorizers destructuring language-constructs language-design

Last synced: 05 Mar 2025

https://github.com/bjoernloetters/noocleus-one

A minimal functional programming language with type inference, algebraic data types and pattern matching

algebraic-data-types functional-programming hindley-milner let-polymorphism pattern-matching polymorphism scala type-check type-inference type-system

Last synced: 18 Mar 2025

https://github.com/loloicci/nimltype

nimltype is a library to use algebraic data type like that of ML in Nim.

algebraic-data-types nim pattern-matching variant-type

Last synced: 12 Jun 2025

https://github.com/ruippeixotog/intro-to-category-theory

A presentation about some basic concepts of category theory

algebraic-data-types category-theory presentation shiftforward

Last synced: 27 Mar 2025

https://github.com/krakphp/adt

ADT (Algebraic Data Types) in PHP

adt algebraic-data-types enum enumeration php php7

Last synced: 23 Aug 2025

https://github.com/qqwy/elixir-fun_landic

Implementations of common Algorithmic Data Types for Elixir, built on top of the `fun_land` interface.

adt algebraic-data-types elixir elixir-lang fun-land

Last synced: 22 Feb 2025

https://github.com/akhansari/ts-adt

Algebraic Data Types & Typescript

adt algebraic-data-types typescript

Last synced: 24 Dec 2025

https://github.com/SuzanneSoy/phc-adt

Algebraic Datatypes for Typed/Racket, with some special features useful for writing compilers

algebraic-data-types racket-library

Last synced: 08 May 2025

https://github.com/aiya000/haskell_de_groupstructure

Haskellใงใ‚ใ‹ใ‚‹็พค่ซ–ใฎไปฃๆ•ฐ็š„ๆง‹้€  (gitbook)

algebra algebraic-data-types gitbook haskell

Last synced: 15 Mar 2025

https://github.com/suzannesoy/phc-adt

Algebraic Datatypes for Typed/Racket, with some special features useful for writing compilers

algebraic-data-types racket-library

Last synced: 21 Jun 2025

https://github.com/eckankar/types-algebraic

Algebraic Data Types in Perl!

algebraic-data-types perl perl-module

Last synced: 10 Jun 2025

https://github.com/basemax/fgrouppy

FGroupPy is a software tool that allows you to perform various operations and analyses on mathematical groups. It provides a Python class called Group that represents a group and offers a set of methods to work with groups, including checking group properties, finding subgroups, generating multiplication tables, identifying normal subgroups, etc.

algebra algebra-software algebraic-data-types algebraic-structures fgroup group-theory group-theory-algorithms group-theory-loop grouptheory python software-algebra software-development software-engineering

Last synced: 03 Apr 2025

https://github.com/alexytsu/adl-lsp

Language Server Protocol implementation for Algebraic Data Language with VSCode client extension

adl algebraic-data-language algebraic-data-types language-server-protocol programming-language vscode vscode-extension

Last synced: 16 Jun 2025

https://github.com/chrismichaelps/scats

A comprehensive TypeScript library bringing Scala's powerful functional programming paradigms to JavaScript/TypeScript, featuring immutable collections, monads, pattern matching, and more

algebraic-data-types either-type functional-programming immutable-collections lazy-evaluation lazylist monads option-type pattern-matching resource-management scala scala-inspired scala-patterns scats state-monad try-pattern tuple typeclasses vector writer-monad

Last synced: 19 Jun 2025

https://github.com/oofdere/crabrave

better typescript enums (also Option<T>, Result<T, E>)

algebraic-data-types enum option result typescript

Last synced: 05 Sep 2025

https://github.com/tttardigrado/goadt

Algebraic Data Types generator for the Go programming language

adt algebraic-data-types code-generator functional-go functional-programming go-generate golang golang-tools haskell

Last synced: 03 Apr 2025

https://github.com/athanclark/websockets-simple

A simple wrapper around the websockets library.

algebraic-data-types api haskell websocket

Last synced: 16 Nov 2025

https://github.com/halfzebra/algebraic-actions

๐ŸŒˆ Algebraic Actions in Redux

algebraic-data-types javascript redux

Last synced: 26 Dec 2025

https://github.com/lewisgaul/python_adt

Implementation of Alegbraic Data Types (ADTs) in Python

algebraic-data-types python3 sum-types tagged-unions

Last synced: 02 Aug 2025