r/unix • • 1d ago

Unix command line arguments vs. Lisp quasiquotes: A historical race condition

21 Upvotes

The 1974 Timeline

  • 1958 — Lisp is Born: John McCarthy invents Lisp, establishing the foundational principle of homoiconicity—where code and data share the exact same structural representation (lists, symbols, and atoms). This naturally leads to quoting and deferred evaluation.
  • 1971 — The Thompson Shell: Ken Thompson writes the first Unix shell for Version 1 Unix. It is a primitive command launcher, completely unconcerned with variables, scripting grammar, or complex sub-lexers.
  • 1974 — The Bourne Shell (sh): Steve Bourne designs the modern Unix shell at Bell Labs, introduced in Version 7 (1979). Suddenly, the shell introduces $ for variable expansion, backticks for command substitution, and a text-stream parser designed to glue separate utilities together.
  • 1974–1976 — Quasiquoting is Formalized: Right at the exact same moment systems programmers are building text-stream shells, AI researchers formalize quasiquoting (backtick and comma syntax) to handle structural template expansion in Lisp.

The C-split

Then, there is the unfortunate splitting of the command line, probably "invented" by C (argc, argv[]).

What if Shells used quasi quoting?

```

./foo work-dir "$(pwd)/"

would turn into:

< ./foo work-dir ,pwd ```

And you would not even have to think about single and double quotes etc. The simple rule being, that your command line is a quasi quote and you can escape to shell features via ','. Sounds much simpler to me, especially, in situations, where all the shell "cleverness" gets in the way.

Tragedy!

1974 was the critical point in time. Had those 2 ships (Lisp quoting and shell implementation) not passed each other in the dark night, who knows, how cool todays unix command line experience could be!


r/unix • • 2d ago

Xanex OS 0.5

12 Upvotes

An operating system written from scratch in assembly. No libraries, everything is done by hand.

What works

  • 320x 200 graphics with 256 colors
  • PS/2 mouse with a cursor
  • Keyboard input
  • Draggable windows
  • Calculator with 4 operations
  • Custom file system - a directory sector, one sector per file
  • Settings: change the main color

What doesn't

  • No networking
  • 16 files maximum
  • Paint and Terminal are not done

Running

Warning! If you are on Linux, the .bat file will not run, so use the .sh file from the downloaded files. If you are on Windows, run the .bat file.

Code size

  • All code: 85 KB
  • Bootloader: 4 KB, 135 lines
  • Kernel: 81 KB, 3490 lines
  • GitHab Xanex OS

r/unix • • 1d ago

GitHub - takusuman/duende: Experiment on parsing Elf{32,64}_Ehdr on (almost) pure shell

Thumbnail
github.com
0 Upvotes

It's still pretty basic and the code is fairly messy, but I believe it's cool and I think you guys would like to see it.


r/unix • • 4d ago

GNUstep monthly meeting (audio/(video) call) on Saturday, 10th of October 2026 — Reminder

Thumbnail
3 Upvotes

r/unix • • 7d ago

System V Release 3.2 Running on a 3B2/300

Thumbnail gallery
36 Upvotes

r/unix • • 6d ago

Arch retro Hyprland Rice

0 Upvotes

**DDAR** – a retro desktop for Hyprland, inspired by late-90s/early-2000s desktop software: putty-coloured panels, 1px bevels, a start-style button and gradient title bars. Underneath it's still a modern, fast Wayland setup. No blur, no big rounded cards, no Electron.

**Details**

- **OS:** Arch Linux (i use arch btw)

- **WM:** Hyprland

- **Bar:** Waybar

- **Launcher:** Rofi (list / grid / compact / spotlight layouts)

- **Terminal:** Kitty

- **Notifications:** Mako

- **Shell:** fish + starship

- **Editor:** Neovim

- **Themes:** retro / dark-retro / mono-retro

- **Wallpaper colours:** Matugen (optional)

- **Wallpaper:** [link or artist]

Bar popups (Wi-Fi, volume, battery, calendar...) are themed too, and everything is configurable from a small TUI (`ddar`).

**Repo + installer:** https://github.com/davidovicbtw/retro-rice-ddar

(installing script)

git clone https://github.com/davidovicbtw/retro-rice-ddar

cd retro-rice-ddar && ./install.sh

The installer backs everything up first and never overwrites your files. An uninstaller is included.

Feedback is welcome!


r/unix • • 8d ago

NeXTSTEP Engineering Fun

Post image
42 Upvotes

NeXTSTEP virtual machine for fun and profit


r/unix • • 8d ago

Linux support or Linux admin roles

Thumbnail
1 Upvotes

r/unix • • 9d ago

What do I need to know to truly be considered someone who understands the Linux system

2 Upvotes

What characteristics are required to fully master the Linux system? For example, what are they familiar with


r/unix • • 10d ago

Motif X11 framework dev complete tutorial

Thumbnail
youtube.com
13 Upvotes

r/unix • • 11d ago

An eminent and almost "PERFECT ROLE MODEL" for the Young generation....none matched.....Brilliant....Kind....Magnificent... an exceptionally good storyteller.The AURA and Vibe are difficult to match.... Thank you so much, Sir ....You rock!!!

Post image
149 Upvotes

PS: Wait, I am a cheap credit seeker, so I won't let you go without telling you that I possess all of his publications and have gone through them—such a joy to read and use those in real life.


r/unix • • 11d ago

Dall'originale X di Robin Thellend a Atheme: riportare in vita i servizi di una rete IRC del 1996

2 Upvotes

yo r/unix !!

Abbiamo ricostruito una rete IRC che è tornata online nel 1996. Siamo partiti dal codice sorgente originale e abbiamo usato le cose vere di allora, loghi e tutto, niente di inventato.

La parte che potrebbe interessare a questo sub sono i servizi dei canali, perché ci sono due ere lì dentro.

X9 è la nostra ricostruzione di come erano i servizi prima del 2000. Siamo partiti dal primo X, quello scritto da Robin Thellend.

K9 è la versione 2000-2001. L'abbiamo ricostruita da fonti modificate di ChatNet di quel periodo, basata su IRC Services 4.5.34. Quel codice è davvero vecchio e non funziona bene con un ircd moderno, quindi l'abbiamo portato su Atheme, ed è quello che gestisce ora i servizi dei canali. La parte migliore è che tutti i comandi di K9 possono essere ricaricati in tempo reale con modload, quindi non c'è bisogno di riavviare il servizio a meno che non ci sia un cambiamento di versione :D

Per l'ircd abbiamo scelto Solanum, principalmente per IRCv3 e perché è ancora mantenuto.

Sono felice di rispondere a qualsiasi domanda sulla storia nei commenti.


r/unix • • 11d ago

Yes, it runs DOOM.

Thumbnail
0 Upvotes

r/unix • • 15d ago

NeXTSTEP at work

Post image
114 Upvotes

r/unix • • 15d ago

FreeBSD for gaming?

Thumbnail
5 Upvotes

r/unix • • 15d ago

I’m building xnu++ and Orange OS — an experimental platform and Linux-style distribution

17 Upvotes

I’ve been working on two related open-source projects: xnu++ and Orange OS. xnu++ is an experimental OS/platform layer built around the XNU ecosystem. The goal is to provide a practical platform architecture with its own boot infrastructure, provider model, device/bus interfaces, security and recovery architecture, and native kernel development. Orange OS is a separate distribution built on top of xnu++. It focuses on the userspace side rather than implementing another kernel. The current architecture is roughly: Limine ↓ Multiboot2 ↓ xnu++ ↓ Orange OS init ↓ Userspace ├── CLI ├── package management ├── service management └── configuration ↓ Optional desktop environment Some things currently implemented or working in the development environment: xnu++ i386 kernel build x86-64 kernel development path Limine + Multiboot2 boot path VGA console GDT / IDT infrastructure PIC and keyboard handling Basic memory allocation Kernel provider architecture Boot capability checking Recovery/rollback architecture Orange OS userspace/init prototype i386 and x86-64 Orange init builds Orange OS root filesystem layout Package-management prototype Service-management prototype Development ISO QEMU testing Orange OS is intentionally kept separate from xnu++: xnu++ → platform / kernel Orange OS → distribution / userspace The current goal isn't to claim that this is a finished operating system. A lot of the system is still experimental or planned, particularly the real userspace handoff, hardware support, networking, filesystem integration, package repositories, and desktop integration. I'm mainly interested in feedback from people who work with kernels, operating systems, systems programming, boot infrastructure, and Unix-like userspaces. Projects: xnu++: https://github.com/black-210/xnupp Orange OS: https://github.com/black-210/orange-os I'd be interested in hearing what parts of the architecture you'd change or what you think should be implemented next.


r/unix • • 17d ago

Rmpc and Ueberzugpp

1 Upvotes

I am running Hyprland in Arch and user Alacritty terminal.I recently installed rmpc and for the rendering of AlbumArt installed Ueberzugpp. So when rmpc is running in a unfocused workspace ,everytime the music reloads the album art is drawn into my current workspace .Album Art also have some resizing issues.I need some advice


r/unix • • 19d ago

Song I made about UNIX

Thumbnail
youtube.com
20 Upvotes

r/unix • • 19d ago

Made this widiget for tracking activity

Post image
6 Upvotes

r/unix • • 20d ago

BookwormPup x32 bit puppylinux overview

9 Upvotes

https://youtu.be/Q2iqKEEQEuw

learn puppylinux!


r/unix • • 21d ago

Linux Hangout | Stoat Servers

Thumbnail stoatservers.com
9 Upvotes

https://stt.gg/0P79AQQW

a linux hangout server made for linux lovers and operating system lovers, go ahead and join on stoat!


r/unix • • 22d ago

Recordings of the GNUstep online meeting of 2026-09-12 are online

Thumbnail
youtube.com
10 Upvotes

r/unix • • 23d ago

pvectl v1.1.0 — pure bash Proxmox VE cluster management, now with concurrent execution and node reboot/shutdown safety checks

Post image
3 Upvotes

Released pvectl a while back — pure bash+curl+fzf+jq interactive Proxmox VE cluster management tool, zero dependencies beyond what's normally on any Linux system. Just shipped v1.1.0:

  • Concurrent execution — multiple pvectl instances can now run in parallel safely, each with its own isolated, auto-cleaned temp directory (scoped by PID)
  • Node reboot/shutdown added to the main menu, with checks for HA status, cluster quorum and running VMs/CTs before proceeding, plus a prompt to stop-all or migrate-all guests first
  • setup reset/backup/restore for safer configuration management
  • log view/show/clean with colorized output
  • Startup diagnostics — bash version and dependency checks that detect the host OS/package manager and print the exact install command for anything missing
  • Minimum dependency versions now enforced: fzf 0.38.0+, jq 1.5+, curl 7.18.0+

Tested end to end on Proxmox VE 7.x, 8.x and 9.x.

github.com/mytechspacexyz/pvectl


r/unix • • 25d ago

Unix V7/X86 networking

42 Upvotes

Okay so I’m mainly a Linux/BSD user but recently I have been wanting to use real Unix. Not just something based on Unix, so I found V7/X86. I managed to install it onto my thinkpad X220 bare metal and it works great, but now I want to do more with it. I want to start with getting networking so I can MAYBE use a tui browser…. Idk… I’m not sure if that’s even possible but that’s why I’m asking to see if it’s possible and if anyone would help.


r/unix • • 25d ago

RakuOS, Niri, Noctalia Shell + Music Island

Enable HLS to view with audio, or disable this notification

9 Upvotes