Yup Shell (yupsh)
The prompt is yup>; the binary is yupsh (Yup Shell, like bash/fish).
yup> seq 1 10 | grep -v 5 | head -n 3
1
2
3Try it live in the browser playground before installing anything.
Why typed streams, not text pipes#
A traditional shell pipeline is text in, text out — every stage re-parses what the last one printed. yupsh's built-in commands are each a gloo.Command[[]byte, []byte] from the gloo-foo framework, composed in-process with the | operator you already know. No fork/exec for echo, grep, sort, wc, and 40+ other built-ins — just Go functions passing typed byte streams to each other.
When you need a real subprocess, exec, git, and perl are explicit escape hatches — the typing model doesn't fight you when you step outside it.
Unix-style flags like wc -l and head -n 10 translate to each command's typed options automatically.