mu1 VS mu

Compare mu1 vs mu and see what are their differences.

mu1

Prototype tree-walking interpreter back when Mu was a high-level statement-oriented language, c. 2018 (by akkartik)

mu

Soul of a tiny new machine. More thorough tests → More comprehensible and rewrite-friendly software → More resilient society. (by akkartik)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
mu1 mu
3 29
2 1,343
- -
0.0 4.3
almost 5 years ago 4 months ago
HTML Assembly
- 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.

mu1

Posts with mentions or reviews of mu1. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-03.
  • Small Project Build Systems (2021)
    2 projects | news.ycombinator.com | 3 Apr 2023
    I got sick of juggling code that migrated from one category to the other, so I wrote a little script that deals with chopping up a large source file into multiple TUs before feeding them to the compiler.

    https://github.com/akkartik/mu1/blob/master/build2

    More details: https://news.ycombinator.com/item?id=33574154#33575045

  • Ask HN: Programming Without a Build System?
    15 projects | news.ycombinator.com | 12 Nov 2022
    This really speaks to me. Modern software is too hard to assemble from source. If you're shipping sources, every moving part you add increases the odds of something going wrong on other people's computers.

    It's worth having some skepticism of tools. By making some operations easy, tools encourage them. Build systems make it easy to bloat software. Package managers make it easy to bloat dependencies. This dynamic explains why Python in particular has such a terrible package management story. It's been around longer than Node or Rust, so if they seem better -- wait 10 years!

    For many of my side projects I try to minimize moving parts for anyone (usually the '1' is literally true) who tries them out. I work in Unix, and one thing I built is a portable shell script that acts like a build system while being much more transparent about what it does: https://codeberg.org/akkartik/basic-build

    When I use this script my build instructions are more verbose, but I think that's a good thing. They're more explicit for newcomers, and they also impose costs that nudge me to keep my programs minimalist.

    You can see this build system evolve to add partial builds and parallel builds in one of my projects:

    https://github.com/akkartik/mu1/blob/master/build0

    https://github.com/akkartik/mu1/blob/master/build1

    https://github.com/akkartik/mu1/blob/master/build2

    https://github.com/akkartik/mu1/blob/master/build3

    https://github.com/akkartik/mu1/blob/master/build4

    Each of these does the same thing for this one repo -- build it -- but adding successively more bells and whistles.

    I think providing just the most advanced version, build4, would do my users a disservice. It's also the most likely to break, where build0 is rock solid. If my builds do break for someone, they can poke around and downgrade to a simpler version.

  • 10 Years Against Division of Labor in Software
    5 projects | news.ycombinator.com | 22 Jan 2022
    Totally agreed!

    Here's a prototype from a few years ago where I tried to make this easier: https://github.com/akkartik/mu1#readme (read just the first few paragraphs)

    I still think the full answer lies in this direction.

mu

Posts with mentions or reviews of mu. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-01.
  • Damn Small Linux 2024
    10 projects | news.ycombinator.com | 1 Feb 2024
    Depending on how minimal a distribution you want, a few years ago I had a way to take a single ELF binary created by my computing stack built up from machine code (https://github.com/akkartik/mu) and package it up with just a linux kernel and syslinux (whatever _that_ is) to create a bootable disk image I could then ship to a cloud server (https://akkartik.name/post/iso-on-linode, though I don't use Linode anymore these days) and run on a VPS to create a truly minimal webserver. If this seems at all relevant I'd be happy to answer questions or help out.
  • Ask HN: Good Books on Philosophy of Engineering
    1 project | news.ycombinator.com | 19 Jan 2024
  • x86-64 Assembly Language Programming with Ubuntu by Ed Jorgensen
    2 projects | news.ycombinator.com | 24 Dec 2023
    This was the thinking behind my https://github.com/akkartik/mu
  • Show HN: FocusedEdit – a classic Macintosh to web browser shared text editor
    4 projects | news.ycombinator.com | 2 Oct 2022
  • Plain Text. With Lines
    12 projects | news.ycombinator.com | 6 Jun 2022
    Yes thank you, I was indeed alluding to https://github.com/akkartik/mu. Perhaps a more precise term would be "software stack".
  • Inferno: A small operating system for building crossplatform distributed systems
    4 projects | news.ycombinator.com | 17 Mar 2022
    I built a computer with its own languages, and I consider it to be _less_ cognitive load when everything is in 1/2/3 languages. I don't have to worry that the next program I want to read the sources will require "Go, Rust, C++, JS/TS, Python, Java, etc."

    There are other metrics to consider besides your notions of cognitive load and productivity. Inferno predates most of the languages on your list. My computer (https://github.com/akkartik/mu) uses custom languages because I was able to design them to minimize total LoC, and to ensure the dependency graph has no cycles (unlike all of the conventional software stack, at least until https://www.gnu.org/software/mes connects up all the dots).

  • Llisp: Lisp in Lisp
    3 projects | news.ycombinator.com | 23 Jan 2022
  • 10 Years Against Division of Labor in Software
    5 projects | news.ycombinator.com | 22 Jan 2022
    "Separation of concerns is a hard-won insight."

    Absolutely. I'm arguing for separating just concerns, without entangling them with considerations of people.

    It's certainly reasonable to consider my projects toy. I consider them research:

    * https://github.com/akkartik/mu

    * https://github.com/akkartik/teliva

    "The idea that projects should take source copies instead of library dependencies is just kind of nuts..."

    The idea that projects should take copies seems about symmetric to me with taking pointers. Call by value vs call by reference. We just haven't had 50 years of tooling to support copies. Where would we be by now if we had devoted equal resources to both branches?

    "...at least for large libraries."

    How are these large libraries going for ya? Log4j wasn't exactly a shining example of the human race at its best. We're trying to run before we can walk.

  • My self-hosting infrastructure, fully automated
    12 projects | news.ycombinator.com | 21 Jan 2022
    I still believe :) I'm looking not for an economic argument but for a strategic one. I think[1] a self-hosted setup with minimal dependencies can be more resilient than a conventional one, whether with a vendor or self-hosted.

    https://sandstorm.io got a lot right. I wish they'd paid more attention to upgrade burdens.

    [1] https://github.com/akkartik/mu

  • My 486 Server
    1 project | news.ycombinator.com | 16 Jan 2022
    I'm very interested in the network stack, having explored it for a while for https://github.com/akkartik/mu before giving up. What sort of network card do you support?

What are some alternatives?

When comparing mu1 and mu you can also consider the following projects:

iceberg - Twitter hit an iceberg, let's replace the ship by Thanksgiving (Nov 24, 2022)

cosmopolitan - build-once run-anywhere c library

create-react-app-zero - All of Create React App, none of the dependencies

mtpng - A parallelized PNG encoder in Rust

WikidPad - WikidPad is a single user desktop wiki

collapseos - Bootstrap post-collapse technology

Odin - Odin Programming Language

mirage - MirageOS is a library operating system that constructs unikernels

pyenv-virtualenv - a pyenv plugin to manage virtualenv (a.k.a. python-virtualenv)

librope - UTF-8 rope library for C

llvm-mingw - An LLVM/Clang/LLD based mingw-w64 toolchain

teliva - Fork of Lua 5.1 to encourage end-user programming