agda-stdlib
creusot
Our great sponsors
agda-stdlib | creusot | |
---|---|---|
4 | 4 | |
556 | 972 | |
2.0% | 5.9% | |
9.3 | 9.6 | |
2 days ago | 4 days ago | |
Agda | Rust | |
GNU General Public License v3.0 or later | GNU Lesser General Public License v3.0 only |
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.
agda-stdlib
-
Static Type Safety with Variadic Functions: an Idea and a Question
For further reading, there's a paper on arity generic programming and some solutions using dependent typing in Agda.
-
When do you find it better to use non-ASCII identifiers?
In Rust I have never seen it. However, in Agda it's a convention, and the code looks beautifully https://github.com/agda/agda-stdlib/blob/master/src/Algebra/Lattice/Structures.agda
-
Should programming languages switch to special characters (gliphs) for it's code?
Agda is a good example, as it allows you to define arbitrary Unicode-based operators and names: https://github.com/agda/agda-stdlib/blob/master/src/Data/Product.agda
-
Separating the type and value namespaces?
Most of the times you want the first three arguments to be passed implicitly, not just the first. And the syntax for passing arguments implicitly is the same for the type argument A and the term arguments n and m. (For Agda, see e.g. l.49 here: https://github.com/agda/agda-stdlib/blob/master/src/Data/Star/Vec.agda)
creusot
What are some alternatives?
cryptominisat - An advanced SAT solver
rust - Empowering everyone to build reliable and efficient software.
l4v - seL4 specification and proofs
agdarsec - Total Parser Combinators in Agda
template-agda - An Agda template, configured for Gitpod (www.gitpod.io) to give you pre-built, ephemeral development environments in the cloud.
creusot - Creusot helps you prove your code is correct in an automated fashion. [Moved to: https://github.com/creusot-rs/creusot]
next-700-module-systems - PhD research ;; What's the difference between a typeclass/trait and a record/class/struct? Nothing really, or so I argue.
agda-life - Conway's Game of Life in Agda.
Agda - Agda formalisation of the Introduction to Homotopy Type Theory
Forscape - Scientific computing language
TypeTopology - Logical manifestations of topological concepts, and other things, via the univalent point of view.