Skip to content
View whispem's full-sized avatar
πŸ’­
πŸ’­

Highlights

  • Pro

Organizations

@RAM-Rust-Aix-Marseille

Block or report whispem

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
whispem/README.md

Hi! I’m Emilie (Em’) πŸ‘‹πŸΌ

Founder of WhispHub. I build programming languages and distributed systems in Rust β€” mostly to understand how they work.

A DESU in Data Science freshly in hand (Aix-Marseille School of Economics), and currently learning to swim in the 42 piscine β€” curiosity does that to you. πŸŠπŸΌβ€β™€οΈ


Around here, everything begins with a whisper.

I came to code from the other side of language β€” literature and grammar, the human kind. Somewhere between conjugation tables and my first compiler error, something clicked: a programming language is just another grammar, one where intent becomes action. So instead of only learning languages, I started building them.

That curiosity became whispem-lang, a small compiler that now compiles itself. Rust taught me how machines like to be spoken to; distributed systems, what happens when thousands of them talk at once; a data-science degree, how to listen when the data answers back. These days, the 42 piscine is teaching me humility β€” one segfault at a time.

The whisper follows me everywhere β€” whispem, WhispHub, sussurro β€” because it is the philosophy: good software doesn't shout. It stays small, legible, and honest about what it does β€” complexity earned, never hidden β€” built to be read, understood, and taken apart. And whispers carry further than you'd think: small ideas, big echoes.

Most of what I ship is open source. WhispHub is a hosted product I keep private β€” but everything else lives on GitHub, MIT-licensed, built in public.


Projects πŸ‘©πŸ»β€πŸ’»

WhispHub

Live Stack Solo

WhispHub is a social space for makers β€” a place where a project gets a living page, not just a code repo. Built solo over six months in Rust + Astro. Officially launched April 29, 2026.

Small ideas, big echoes.

  • A full page per project β€” share the why, not just the code
  • Hearts instead of stars β€” relational, not just a counter
  • Echoes instead of forks β€” share the meaning, not duplicate the code
  • Pulses instead of commits β€” capture the rhythm of your work over time
  • Zero tracking, zero ads, GDPR by design β€” quiet by intention

The product is hosted at whisphub.dev β€” free for everyone. Read the full story on the About page.


whispem-lang

Version Tests License: MIT

whispem-lang is a small, self-hosted programming language. The compiler is written in Whispem itself and compiles itself, producing byte-identical output with the reference Rust implementation. It runs on a standalone C VM with no dependencies beyond a C compiler. Rust remains the reference implementation.

Whisper your intent. The machine listens.

  • Self-hosted compiler β€” compiler/wsc.wsp: 1724 lines of Whispem for the full pipeline. Source in, .whbc bytecode out β€” identical to Rust output.
  • Verified bootstrap β€” The compiler compiles itself. Both outputs share the same SHA-1, ensuring a stable fixed point.
  • Standalone C VM β€” vm/wvm.c: a single-file runtime (~2000 lines) with 34 opcodes, interactive REPL, and a --dump disassembler.
  • 204 tests, zero warnings β€” 153 Rust tests + 51 autonomous C VM tests with bootstrap verification.
fn factorial(n) {
    if n <= 1 { return 1 }
    return n * factorial(n - 1)
}

for n in range(1, 16) {
    if n % 15 == 0 { print "FizzBuzz" }
    else if n % 3 == 0 { print "Fizz" }
    else if n % 5 == 0 { print "Buzz" }
    else { print n }
}
make
./wvm compiler/wsc.whbc examples/hello.wsp   # compile + run
cargo test                                   # 153 Rust tests

sussurro.cpp

Version Stack License: MIT

sussurro.cpp is an offline voice-to-voice interpreter across English, Spanish, French and Italian β€” type or speak in one language, read or hear it in another. Neural machine translation built from scratch on ggml: no server, no network at runtime. Sussurro is Italian for whisper.

Whisper in one language. Listen in another.

  • Marian / OPUS-MT reimplemented on ggml β€” encoder–decoder Transformers with greedy & beam-search decoding, an incremental KV cache, and q8_0 / q4_0 / f16 weights.
  • Twelve translation directions, no pivoting β€” one multilingual model for Romance ↔ Romance, bilingual models for English ↔ Romance.
  • Voice in, voice out β€” speech-to-text via whisper.cpp, text-to-speech via sherpa-onnx with a Piper voice per language.
  • Native desktop app β€” a Tauri v2 UI wrapping the whole pipeline; every stage also works from the CLI.
git clone --recurse-submodules https://github.com/whispem/sussurro.cpp.git
cd sussurro.cpp && cmake -B build && cmake --build build -j
./build/sussurro -m models/tc-en-it.gguf -p "Hello, how are you?"   # β†’ Italian

learn-assembly-with-em

Arch libc Segfaults

learn-assembly-with-em is my learning-in-public descent into x86-64 assembly: rebuilding userland from raw syscalls up. Linux, NASM, no libc, no external calls β€” syscall or nothing.

Drowning in C? Dive deeper β€” after assembly, C feels like floating.

  • Coreutils, by hand β€” cat, wc, ls and grep in pure assembly (filed under "warm-up")
  • printf and malloc from scratch β€” varargs parsing, brk/mmap, free lists, alignment
  • A working shell β€” fork, execve, pipes and redirections, all in raw syscalls
  • Boss fights ahead β€” a Forth interpreter, a self-hosting assembler, a bootloader… and, eventually, a mini-kernel

The piscine teaches you to swim. This repo is the bottom of the pool.


Also on the shelf

dprism β€” terminal-native data profiling tool in Rust. htop meets pandas-profiling. Explore multi-GB datasets instantly without leaving your terminal. Built with Polars and Ratatui.

minikv β€” distributed key-value store in Rust. Raft consensus, 2PC transactions, 256 virtual shards, S3-compatible API, 50 000+ writes/sec.


"The best way to learn is to build."

LinkedIn

Discord

Email

Pinned Loading

  1. learn-assembly-with-em learn-assembly-with-em Public

    Drowning in C? Dive deeper β€” after assembly, C feels like floating

    Assembly 1

  2. sussurro.cpp sussurro.cpp Public

    Offline neural translation across English, Spanish, French & Italian β€” type or speak, read or hear it. Built on ggml.

    C++ 23

  3. whispem-lang whispem-lang Public

    Whispem is a small, self-hosted programming language. The compiler is written in Whispem, compiles itself, and runs on a standalone C VM β€” no external dependencies beyond a C compiler. Rust serves …

    Rust 138 12

  4. minikv minikv Public

    Distributed, multi-tenant key-value and object store in Rust, with Raft consensus, WAL durability, and production-oriented operations.

    Rust 394 14

  5. dprism dprism Public

    A terminal-native tool that lets you explore, profile, and understand datasets instantly β€” without leaving your terminal, without spinning up Jupyter, without writing a single line of code. Built w…

    Rust 17 1

  6. whisphub-cli whisphub-cli Public

    Command-line client for WhispHub β€” push your code from terminal.

    Rust 4