Some thoughts on dependent types

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • illacceptanything

    The project where literally anything* goes.

  • As a next step, let's filter everything from the table with a forall. That's because, when we get a type back from a validator with a forall in it, we have to treat it like a blob because it could be anything. All we know is that it exists, and folks will often call it an existential type. That means we can only pass the blob to functions that accept anything. Some examples are \x -> x (the identity function) and _ -> 5 (a function that returns 5). In our microservice, we're not going to get very far with either of those functions. The table now becomes:

  • purescript-vec-dt

    Dependently-typed vectors in purescript

  • That's a lot of prose just to plug a 100-line library I wrote called purescript-vec-dt. I kid, I kid, this was mostly about sharing how I think about dependent types, and incidentally, I wrote a library. Hopefully, what I wrote above makes the library look less magical. Let's look at a bit of application code written with the library.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts