-
On the page [Record Syntax](https://devtut.github.io/haskell/record-syntax.html), records are described as a generalization of sum types:
> Records are an extension of sum algebraic data type that…
-
Hi, I know this is probably a long shot given the downstream dependencies but as you're probably aware Java 17 has been released for at least a year now and is the latest LTS release (soon to be super…
-
Spire currently has good support for:
- concrete data types (Rational, SafeLong, etc...)
- abstract typeclasses that mimic abstract algebraic structures (rings, fields, etc...)
We want to reduc…
-
[`Rust`](https://www.rust-lang.org) is quite a new language... but, it is an awesome language.
Particularly, it features `affine types`, `algebraic data types`, and is in addition a `systems programm…
-
Hello!
I've found this library when I searched for tools for Algebraic Data Types in TypeScript, and was immediately impressed from documentation! Looks like the best library for ADTs I've seen so …
-
Rust is a [multi-paradigm](https://en.wikipedia.org/wiki/Programming_paradigm), [general-purpose programming language](https://en.wikipedia.org/wiki/General-purpose_programming_language) that emphasiz…
-
Fathom currently has anonymous product types (records), but no (convenient) way of expressing sum types.
# Potential solutions
* Do nothing. Encode sum types as dependent records (eg `let Option :…
-
Congratulations on the release of the first version of the Python bindings! 🎉
As I mentioned in issue #559 and in the `bindings/python` documentation:
> Access to data of message types (e.g., Gr…
-
Common Lisp has a nice (gradual) type system with support for algebraic data types.
However declaring function types can be cumbersome:
```lisp
(declaim (ftype (function (ARG-TYPES) RETURN-TYPE…
-
Currently `URI` and `Url ` are handled through transformations between the two of them.
URI is from the Network.URI library.
Url is from this project.
The `Url` datatype may be redundant.
Inve…