Skip to content
View vic's full-sized avatar
🐊
hoy amanecí dichosamente herido de muerte natural
🐊
hoy amanecí dichosamente herido de muerte natural

Sponsors

Private Sponsor
@vorburger
Private Sponsor
@defewit
Private Sponsor
@aveeryy
@theutz
@drupol
@rcouto
@fabianhjr
@sebb3

Sponsoring

@sini

Block or report vic

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
vic/README.md

Hi, I'm Vic 👋 [about me]

Compilers · Effect Systems · Nix · Functional Programming

Sponsor @vic   CV — 25+ years

Apache Software Foundation PMC   den in production at the European Commission   1,300+ stars across 25+ libraries

Open-source author since 1999 · GitHub User #331 · Mexico City 🇲🇽

Important

I build public infrastructure in the open — no VCs, no equity, free and libre forever. The biggest of it is dnx: a new parallel Nix engine.


🚀 dnx — a new Nix engine

dnx   docs

A rootless, single-binary Nix evaluator built on Δ-Nets (Salvadori, arXiv:2505.20314 · deltanets.org) — interaction nets with optimal parallel λ-reduction and perfect confluence (a proven theorem of the model).

What sets it apart — one built, one designed:

  • Parallel by construction (built · verified across 1–8 threads) — confluence means independent reductions touch disjoint memory, so they fire lock-free. Parallelism is a property of the model, not bolted onto thunks.
  • 🧠 A semantic cache (designed) — it will key on a computation's meaning (the canonical normalized net) rather than a recipe hash, so two expressions that compute the same thing would collapse to one cache key.

Research-grade and early — but the bet is big: that package managers, language runtimes, and proof assistants are secretly the same problem, and one mathematically-grounded engine can be all three.

💜 Sponsor dnx →


🧩 The denful Ecosystem

It all started with my little import-tree lib and has grown into more than 30+ repos, so I created an umbrella GitHub ogranization for them and building composable Nix tools — aspects, algebraic effects, evaluation, and the dnx runtime. Nix is powerful, yet its libraries rarely compose; denful brings them together. 1,300+ ⭐ · 25+ libraries · in production at the EU Commission. Docs at denful.dev · all repos →

Aspect-Oriented Nix

  • den — context-aware, aspect-oriented configuration framework — used in production by the European Commission
  • import-tree — recursively import every Nix module in a tree; the ecosystem's most widely adopted library
  • flake-aspects — zero-dependency aspect composition with dependency DAGs and parametric providers
  • flake-file — generate flake.nix from typed Nix module options
  • dendrix — community-driven Nix distribution on the Dendritic pattern
  • checkmate — zero-dependency flake checker: treefmt + nix-unit

Algebraic Effects & Type Theory

  • nfx — algebraic effects with handlers for Nix, from four kernel primitives
  • fx-rs — ability-style algebraic effects for stable Rust (after Scala's Kyo)
  • fx.go — algebraic effect-handler system for Go with typed capabilities
  • rust-effects — freer-monad effects + an MLTT dependent type checker for stable Rust
  • nix-effects — effect system with dependent & linear types + a HOAS checker for Nix

Streams, FRP & Tooling

  • zen — ~100-line Nix module system, MLTT-verified, ~26× faster than lib.evalModules
  • ned — stream-based functional-reactive programming for Nix, inspired by Cycle.js
  • bend — lens-based bidirectional parser-combinators for Nix. Parse, don't validate.
  • nest — declarative multi-node NixOS fleets with a CSS mental model
  • nix-versions — find nixpkgs revisions for historical package versions
  • vix — my multi-host NixOS + Darwin infra; the ecosystem's proving ground
📦 More work — Scala · Elixir · Go · Emacs · interaction nets

☕ Scala

  • zio-logic — μKanren-inspired relational/logic programming for ZIO2
  • laminar_cycle — Cycle.js style user-computer model in Laminar
  • nonono — Scala 3 compiler plugin to prevent unsafe function calls
  • katan — logic language on typed concatenative effects
  • mill-docker — minimalist distroless Docker images for Java apps with Mill

💧 Elixir

  • params — Ecto-style parameter validation/casting
  • pit — extract/transform values in Elixir pipe flows
  • expat — reusable, composable patterns across Elixir libraries
  • ok_jose — pipe functions matching ok/error tuples
  • pond — state-aware functions without spawning processes
  • happy — the alchemist's happy path with Elixir

🐹 Go

  • GoDNet — Delta Interaction Nets reduction engine & compiler backend
  • GoDNix — a Nix language compiler into Delta Interaction Nets
  • leader — Vim/Evil leader-key for your $SHELL

🤖 Emacs Lisp

  • rebecca-theme — the purple turtle theme for Spacemacs
  • ido-better-flex — better fuzzy matching for Emacs ido-mode
  • vee — Vic's Emacs Environment
🤝 Community & upstream contributions
Project Role
Apache Buildr Core contributor · ASF member · PMC chair
asdf-vm Maintainer and plugin author
jjui Active contributor to this jj TUI
Rubinius Early contributor — implemented Enumerable in Ruby
Ragel Ruby and Rubinius VM code backends
effects-bibliography Collaborative bibliography of computational effects
Darcs · Fancy · vtd-xml Contributor

🙋 About Me

I've been writing open source since 1999 — learning by reading other people's code, late nights and weekends, for years. In 2023 I burned out and stepped away from tech entirely. I spent that time with poetry, art, and theology, and came back with more energy and more love than ever.

Now I build dnx and berean.faith — a scripture-study platform where the Bible explains itself — and I think of both as acts of love, not just engineering.

  • 🟣 I love the Rebecca purple color, Rothko paintings, and effect systems
  • 🎹 I obsess over my Glove80 keyboard and finding layouts that reduce finger stress
  • 🔇 ~50% hearing loss — open source has always been my voice; written and async is where I feel at home
  • ✝️ Seventh-day Adventist — I believe my life's purpose is Love, and that we don't author it, it authors us
  • 💜 I'm single — feel free to fix this 😄
  • 🥔 Leave a potato — or literally anything else. Just say "Hey, here's a potato."

💼 Work With Me

25+ years across compilers & language implementation, algebraic effects, functional programming, and Nix infrastructure. Open to remote roles in any of those.

  • Primary — Rust · Nix · Go · Scala · Elixir
  • Also fluent — Haskell · Elm · Ruby · TypeScript
  • Paradigms — functional programming · algebraic effects · interaction nets · actor model · type theory · dependent types (MLTT)
  • Infrastructure — NixOS · Kubernetes · Terraform · Docker · CI/CD

📄 Read my full CV →


📬 Connect


If something I made saved you time, supporting the person behind it is what keeps it free and in the open. 🙏

💜 Become a Sponsor  ·  ☕ Buy me a coffee


Vic's GitHub card

Pinned Loading

  1. rev rev Public

    Biblical commentary on Revelation by Ranko Stefanovic