cakeml VS smlpkg

Compare cakeml vs smlpkg and see what are their differences.

smlpkg

Generic package manager for Standard ML libraries and programs (by diku-dk)
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.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
cakeml smlpkg
15 4
923 159
0.9% 0.6%
9.8 3.9
3 days ago 9 months ago
Standard ML Standard ML
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

cakeml

Posts with mentions or reviews of cakeml. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-11.
  • CakeML: A formally verified implementation of ML
    1 project | news.ycombinator.com | 14 May 2024
  • The Deep Link Equating Math Proofs and Computer Programs
    5 projects | news.ycombinator.com | 11 Oct 2023
    If I understand what you are asking about correctly, then I do think you are mistaken.

    As a sibling comment observed, you would be proving something about a program, but proving things about programs is both possible and done.

    This ranges from things like CakeML (https://cakeml.org/) and CompCert (compilers with verified correctness proofs of their optimizations) to something simple like absence of runtime type errors in statically strongly soundly-typed languages.

    Of note is that you are proving properties of your program, not proving them perfect in every way. The properties of your program that you prove can vary wildly in both difficulty and usefulness. A sufficiently advanced formally verified compiler like CakeML can transfer a high-level proof about your source code to a corresponding proof about the behavior of the generated machine-executable code.

  • The future of Clang-based tooling
    3 projects | news.ycombinator.com | 29 Jul 2023
    > A single IR with multiple passes is a good way to build a compiler

    https://mlir.llvm.org/, which is using, is largely claiming the opposite. Most passes more naturally are not "a -> a", but "a -> b". data structures and data structures work hand in hand, it is very nice to produce "evidence" for what is done in the output data structure.

    This is why https://cakeml.org/, which "can't cheat" with partial functions, has so many IRs!

    Using just a single IR was historically done for cost-control, the idea being that having many IRs was a disaster in repetitive boilerplate. MLIR seeks to solve that exact problem!

  • CakeML – A Verified Implementation of ML
    1 project | news.ycombinator.com | 5 Jun 2023
  • Tools for Verifying a Language and its Semantics
    1 project | /r/ProgrammingLanguages | 2 Jan 2023
    You may want to look at [CakeML](https://cakeml.org) done in HOL4, there is also a nice proof pearl about a more .. minimalistic verified bootstrapped compiler also in HOL4.
  • old languages compilers
    12 projects | /r/ProgrammingLanguages | 26 Dec 2022
    CakeML
  • Is there a formally-proven real-time language/computing env. or operating system?
    2 projects | /r/ProgrammingLanguages | 7 Sep 2022
    There is also Cake ML which is a formally verified functional programming language compiler and runtime.
  • CakeML: A Verified Implementation of ML
    2 projects | /r/sml | 7 Mar 2022
    There is also a CakeML -> Standard ML compiler though it seems to have been built to translate benchmarks and sort of old so I'm not sure how comprehensive it is: https://github.com/CakeML/cakeml/tree/master/unverified/front-end
  • The λ-Cube
    3 projects | news.ycombinator.com | 15 Jan 2022
    > One guess is that lisps cope with being minimal through use of macros and metaprogramming, it's difficult for a typed language to support that level of metaprogramming while maintaining the various guarantees that one wants from such a system.

    Difficult, but certainly not impossible [0].

    [0] https://cakeml.org/

  • Two Mechanisations of WebAssembly 1.0
    2 projects | /r/ProgrammingLanguages | 3 Jan 2022
    If this interests you, I'd highly recommend checking out CompCert (docs here) and CakeML.

smlpkg

Posts with mentions or reviews of smlpkg. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-08-18.
  • A good dependency manager for a new programming language?
    1 project | /r/ProgrammingLanguages | 20 Dec 2022
    They don't matter, since the package manager is entirely concerned with files. The Futhark package manager was actually ported to SML in the form of smlpkg. How those files are made available to the compiler is not the problem of the package manager. In SML's case, it's done with MLB files (which are part of the packages).
  • Millet, a Language Server for SML
    7 projects | news.ycombinator.com | 18 Aug 2022
  • Standard ML [PLDI 2021]
    1 project | news.ycombinator.com | 14 Jul 2021
    University Of Copenhagen who previously used SML for introductory programming courses (Now uses F#) have made a package manager for SML modules with MLB files: https://github.com/diku-dk/smlpkg
  • How should I build a package manager?
    2 projects | /r/ProgrammingLanguages | 13 Mar 2021
    I wrote a package manager that sounds similar to what you are proposing. An important design criteria was that it was easy to understand and simple to implement, even at the cost of some clumsiness in use. I wrote about the design before and after I implemented it. It is based on a cut-down version of Go's package manager, and has itself served as the basis for a package manager for SML.

What are some alternatives?

When comparing cakeml and smlpkg you can also consider the following projects:

Daikon - Dynamic detection of likely invariants

mlkit - Standard ML Compiler and Toolkit

hardware - Verilog development and verification project for HOL4

LunarML - The Standard ML compiler that produces Lua/JavaScript

mpl - The MaPLe compiler for efficient and scalable parallel functional programming

smlfmt - A custom parser/auto-formatter for Standard ML

CompCert - The CompCert formally-verified C compiler

smackage - Smackage Package Manager for Standard ML

Checker Framework - Pluggable type-checking for Java

sml-compiler - A compiler for Standard ML, somewhat

checkedc - Checked C is an extension to C that lets programmers write C code that is guaranteed by the compiler to be type-safe. The goal is to let people easily make their existing C code type-safe and eliminate entire classes of errors. Checked C does not address use-after-free errors. This repo has a wiki for Checked C, sample code, the specification, and test code.

simple-ismlnj - SML/NJ simple kernel for Jupyter/IPython Notebook

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.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured