hatsugen VS sml-buildscripts

Compare hatsugen vs sml-buildscripts and see what are their differences.

hatsugen

A small programming language formally defined with a series of blog posts and Lean code. (by azdavis)

sml-buildscripts

Scripts to compile and run Standard ML programs defined in .mlb files. (by cannam)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
hatsugen sml-buildscripts
3 1
5 14
- -
2.1 0.0
12 months ago 6 months ago
Lean Shell
MIT License GNU General Public License v3.0 or later
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.

hatsugen

Posts with mentions or reviews of hatsugen. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-14.
  • A decade of developing a programming language
    7 projects | news.ycombinator.com | 14 Nov 2023
    Might this help? I wrote it: https://azdavis.net/posts/define-pl-01/
  • Rust in 2023 - azdavis
    2 projects | /r/rust | 24 Dec 2022
    Perhaps my own series of posts? It starts here.
  • Memories: Edinburgh ML to Standard ML
    3 projects | news.ycombinator.com | 5 Oct 2022
    2. Preservation states that if you have a program that type-checks _and_ that can continue evaluating, _as_ it continues to evaluate, it _continues_ to type-check.

    Note that the conclusion of preservation 'feeds back' into progress: the program type-checks. And vice versa: progress may state as its conclusion that the program can continue evaluating, which then lets you apply preservation. This means you can keep applying the progress and preservation theorems in a 'loop' until the program is done evaluating.

    For each of the 4 posts in my series about formal semantics, I duly translated the rules presented in the blog post into Lean code, and then proved that the rules do satisfy the safety properties. For example, for the first post linked above:

    - The syntax of the language: https://github.com/azdavis/hatsugen/blob/part-01/src/syntax....

sml-buildscripts

Posts with mentions or reviews of sml-buildscripts. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-10-05.
  • Memories: Edinburgh ML to Standard ML
    3 projects | news.ycombinator.com | 5 Oct 2022
    I also use .mlb files exclusively and agree with your general point - but I do make use of Poly/ML and occasionally SML/NJ against the same sources, using scripts to drive them from .mlb files: https://github.com/cannam/sml-buildscripts

    These scripts are really limited. They only support the simplest .mlb files that are really just lists of other files, and the semantics are technically incorrect because they have no way to reset the environment when beginning each new .mlb file in, as the spec says they should. I use them scrappily during development and then generally use MLton for production builds. But you can get quite a lot done within those limitations, and it's very nice to have the faster compilation of Poly/ML, as well as the option of seeing error messages from more than one compiler.

What are some alternatives?

When comparing hatsugen and sml-buildscripts you can also consider the following projects:

pkg - Package your Node.js project into an executable

rust - Empowering everyone to build reliable and efficient software.

hm - a simple Hindley-Milner type system in Go