koika
karamel
Our great sponsors
koika | karamel | |
---|---|---|
2 | 1 | |
128 | 384 | |
6.3% | 2.1% | |
0.0 | 9.4 | |
7 months ago | 8 days ago | |
Coq | OCaml | |
GNU General Public License v3.0 only | Apache License 2.0 |
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.
koika
-
Let's collect relatively new research programming languages in this thread
https://github.com/koka-lang/koka Algebraic effects and reference counting. https://github.com/mit-plv/koika hardware description DSL for coq
-
There's an ongoing effort to rewrite Principia Mathematica using Coq
There are ongoing research projects about that, you may want to have a look at Kôika (https://github.com/mit-plv/koika), Kami (https://github.com/mit-plv/kami), Lutsig (https://github.com/CakeML/hardware) and silveroak (https://github.com/project-oak/silveroak). Closer to HLS there is also Vericert (https://github.com/ymherklotz/vericert). There may be other research project I am unaware of, feel free to add them in a reply, I am interested in it.
karamel
-
Let's collect relatively new research programming languages in this thread
Jasmin and F* don't have similar goals, Jasmin is a language designed to precisely express low-level code, while F* is a generalist language for verified programming. There is a subsystem of F* that performs extraction to "readable C code", Karamel (used to be called Kremlin), but you get the usual limitations of C code as a high-level assembler, and also an embedded assembly layer built on Vale. Project Everest therefore generates artifacts that are a mix of C and assembly, rather than a new low-level language design as Jasmin.
What are some alternatives?
kami - A Platform for High-Level Parametric Hardware Specification and its Modular Verification
jasmin - Language for high-assurance and high-speed cryptography
vericert - A formally verified high-level synthesis tool based on CompCert and written in Coq.
datafun - Research on integrating datalog & lambda calculus via monotonicity types
CompCert - The CompCert formally-verified C compiler
cubicaltt - Experimental implementation of Cubical Type Theory
hardware - Verilog development and verification project for HOL4
cogent - Cogent Project
silveroak - Formal specification and verification of hardware, especially for security and privacy.
hacl-star - HACL*, a formally verified cryptographic library written in F*
ponyc - Pony is an open-source, actor-model, capabilities-secure, high performance programming language