M/PC – A Concatenative OS

(wiki.xxiivv.com)

83 points | by caminanteblanco 2 days ago ago

13 comments

  • chirsz a day ago ago

    Does this name come from reversing "CP/M"?

    • entaloneralie 21 hours ago ago

      It does :) It's CP/M commands(era, ren, etc..) except they work in postfix instead of infix.

  • sph a day ago ago

    Great work as usual.

    I wish I were half as productive as Devine Lu Linvega. Perhaps I should get a sailboat and spend my time hacking without distraction, but I am not a fan of the seas.

  • veltas a day ago ago

    They've been putting interesting update screenshots on fediverse recently: https://merveilles.town/@neauoire/116823589548151098

  • benj111 2 days ago ago

    Is this not more of a shell than an os?

    Nevertheless an interesting idea. Unix pipes are basically concatenative, I've often thought how much mileage you could get out of going more in this direction.

    Having said that. This has a lot of forth in it. (Dup, over, rot) I'm not sure the forth way, of passing options in the stack would necessarily work so well in a shell.

    • photios a day ago ago

      > Unix pipes are basically concatenative, I've often thought how much mileage you could get out of going more in this direction.

      You might enjoy the "Shell Has a Forth-like Quality" article. It's changed my shell scripting a lot.

      https://www.oilshell.org/blog/2017/01/13.html

    • quotemstr 2 days ago ago

      It kind of asks "What if we built an OS, but with all data sourced from immutable, append-only logs processed by pure functios?"

      Probably not literally realizable right now, but IMHO, the closer we can get, the better

      • avadodin a day ago ago

        You could easily make CUNIX by starting with a log containing the state of a PDP11 at boot and a pure function which appends ignore previous input and the next PDP11 state to it.

  • f47204 a day ago ago

    maybe I am dumb, but I don't really get how this is different to just piping between commands?

    • ux266478 21 hours ago ago

      It's more than just a grammar. But specifically on that note, I'm assuming you know a POSIX Shell language. Spend some time with Forth and ask yourself if these are experientially the same thing.

      Equifinality is extremely misleading.

    • a day ago ago
      [deleted]
  • mtdewcmu a day ago ago

    Looks like the hardware this runs on has only 64 KB RAM.

  • MrEricSir a day ago ago

    Not to be confused with MPC, apparently: https://en.wikipedia.org/wiki/Multimedia_PC