cakeml VS F#

Compare cakeml vs F# and see what are their differences.

F#

Please file issues or pull requests here: https://github.com/dotnet/fsharp (by fsharp)
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 F#
14 26
915 2,199
1.1% -
9.8 0.0
7 days ago over 1 year ago
Standard ML F#
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.
  • 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.
  • VLISP: A Verified Implementation of Scheme [pdf]
    1 project | news.ycombinator.com | 29 Dec 2021

F#

Posts with mentions or reviews of F#. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-12-26.
  • old languages compilers
    12 projects | /r/ProgrammingLanguages | 26 Dec 2022
    F# F*
  • From Script to Scaffold in F#
    8 projects | dev.to | 23 Dec 2022
    This year I've been attempting Advent of Code in my favourite programming language, F#. This is a beginner(ish) centered post about making incremental changes from the smallest possible solution to something more robust.
  • for newbie , VScode+ionide or VisualStudio
    1 project | /r/fsharp | 21 Dec 2022
    I can recommend polyglot notebooks in vs code, so you can mix different languages.Take a look athttps://fsharp.org/ for some project ideas and frameworks.
  • The comeback of the Fediverse and the Old Web
    3 projects | dev.to | 4 Dec 2022
    I have many less followers on Mastodon than in the Birdsite (40 vs 341), yet my activity has generated many more interactions than there. Not only that, among the users who decided to interact with me I counted: a co-discoverer of the Laniakea supercluster, one of the lead developers behind F#, the author of many important books on Java & JVM, plus many others. I'm literally a nobody, but this time there was no algorithm relying on relevance and engament metrics to decide what to present to each one of us.
  • Chicago and London TDD Styles for Functional Programming
    4 projects | dev.to | 18 Sep 2022
    FP devs differ based on language here. Elm, like F#, tends to encourage "a bunch of functions and types in a file". While Elm supports modules, we don't really care where it came from; they're all pure, all deterministic, the compiler tells us if it works.
  • Performance of immutable collections in .NET
    4 projects | /r/dotnet | 23 Jul 2022
    The builtin fsharp collections actually are just "immutable", not persistent as you mention. (Ref: https://github.com/fsharp/fsharp/blob/master/src/fsharp/FSharp.Core/map.fs. This is just an AVL tree that returns a copy on mutations: https://github.com/fsharp/fsharp/blob/577d06b9ec7192a6adafefd09ade0ed10b13897d/src/fsharp/FSharp.Core/map.fs#L118)
  • Coming from Scala
    2 projects | /r/typescript | 3 Jul 2022
    You can dive into .NET ecosystem by trying F#. It's functional-first language so this should be familiar.
  • Parsing Lambda Error Logs in ReScript & Python
    19 projects | dev.to | 28 May 2022
    ReScript code is just like F# or OCAML; it doesn’t have a function parse phase like JavaScript, so we have to define our functions and types first before we can use them. That’s fine, but makes explaining the code backwards (meaning you start at the bottom of the file and work your way up), so we’ll start at our lambda handler and explain each part, regardless of where it’s defined.
  • Please put units in names
    7 projects | /r/programming | 21 Mar 2022
    F# is a JavaScript and .NET language for web, cloud, data-science, apps and more.
  • E
    1 project | /r/youngpeopleyoutube | 19 Mar 2022
    Also a programming joke

What are some alternatives?

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

Daikon - Dynamic detection of likely invariants

ClojureCLR - A port of Clojure to the CLR, part of the Clojure project

hardware - Verilog development and verification project for HOL4

Roslyn - The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.

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

julia - The Julia Programming Language

CompCert - The CompCert formally-verified C compiler

VisualFSharp - The F# compiler, F# core library, F# language service, and F# tooling integration for Visual Studio

Checker Framework - Pluggable type-checking for Java

Nemerle - Nemerle language. Main repository.

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.

IronScheme - IronScheme