unison VS syntactic_versioning

Compare unison vs syntactic_versioning and see what are their differences.

unison

A friendly programming language from the future (by unisonweb)

syntactic_versioning

What if Git worked with Programming Languages? (by GavinMendelGleason)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
unison syntactic_versioning
17 8
5,504 98
1.0% -
9.9 0.0
6 days ago over 2 years ago
Haskell
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.

unison

Posts with mentions or reviews of unison. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-07.
  • Unison Cloud
    7 projects | news.ycombinator.com | 7 Feb 2024
    Hi, one of the Unison creators here. We've talked about adding pluggable syntax[1]. It's in principle straightforward (the code is already stored in a database as its abstract syntax tree, not text) and I imagine a future version of Unison could let you pick from a variety of syntaxes. But we haven't gotten to it yet.

    [1] https://github.com/unisonweb/unison/issues/499

    ... that said, the language semantics and libraries are still going to be different, so even if we have a python-ish or typescript-y syntax, there'll still be new things to learn. :)

    7 projects | news.ycombinator.com | 7 Feb 2024
    Short version: no type classes (yet)

    Longer version:

    Building upon what Quekid5 mentioned, Unison abilities are an implementation of what is referred to as algebraic effects in programming language literature. They represent capabilities like IO, state, exceptions, etc. They aren't really a replacement for type classes, though in some cases you can shoehorn abilities in where you might otherwise use a type class.

    For someone coming from a Haskell background, I think that abilities are closer to a replacement for monad transformers. But in my opinion they are much more ergonomic.

    Discusson of type classes comes up a lot. Here is a long-standing GitHub issue: https://github.com/unisonweb/unison/issues/502

    For what it's worth, I've written Unison quite a lot over the past few years and while I've missed type classes at times, I think that reading unfamiliar code is easier without them. There's no implicit magic; you can see exactly what is being passed into a function. So far I've been happy with a bit more verbosity for the sake of readability.

  • Show HN: Winglang – a new Cloud-Oriented programming language
    10 projects | news.ycombinator.com | 6 Dec 2023
    I've been following the Unison lang [1] for quite some. Wing seem to set similar goals? From the first glance Wing looks more polished, but there's "The Big Idea" behind Unison - is there something similar?

    [1]: https://github.com/unisonweb/unison

  • C++ evolution vs C++ successor languages. Circle's feature pragmas let you select your own "evolver language."
    2 projects | /r/cpp | 23 Jan 2023
    in haskell it looks like this, you specify the language extensions you want at the top of the source files: https://github.com/unisonweb/unison/blob/trunk/unison-core/src/Unison/ABT.hs
  • Syntax Design
    3 projects | /r/ProgrammingLanguages | 5 Nov 2022
    I think Unison is going in this direction. Imo this is a mistake, as a program language functions not just as specification for the machine, but also as communication between programmers. Allowing the introduction of arbitrary dialects to suit individual preferences seems like it would interfere with that communication.
  • What if Git worked with Programming Languages?
    17 projects | news.ycombinator.com | 27 Sep 2021
  • Red and blue functions are a good thing
    4 projects | news.ycombinator.com | 26 Apr 2021
    The Unison language [1] also has a very interesting effect system.

    [1] https://github.com/unisonweb/unison

  • What does your ideal programming language look like?
    4 projects | /r/ProgrammingLanguages | 28 Jan 2021
    I think Unison might have at keast somewhat similar features to what you talk about with package manegement and possibly modules. I haven't tried it out yet but from the documentation it sounds similar.

syntactic_versioning

Posts with mentions or reviews of syntactic_versioning. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-09-28.

What are some alternatives?

When comparing unison and syntactic_versioning you can also consider the following projects:

nvim-treesitter-context - Show code context

dark - Darklang main repo, including language, backend, and infra

project-m36 - Project: M36 Relational Algebra Engine

cone - Cone Programming Language

nbdime - Tools for diffing and merging of Jupyter notebooks.

structured-haskell-mode - Structured editing minor mode for Haskell in Emacs

UwUpp - The next generation esoteric language

lawvere - A categorical programming language with effects

structured-haskell-m

git-merge-driver - Example of how to configure a custom git merge driver