8000 vic (Victor Borja) · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
View vic's full-sized avatar
🐢
turtles all the way up
🐢
turtles all the way up

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.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

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

Report abuse
vic/README.md

Things I'm currently Coding in The Open:

fx-rs - Type-safe Algebraic Effects System for Rust. With Lenses and Context Adaptation and Quantified Effects. (Research Project)

fx.go - An Interpretation of Scala's Kyo kernel based on Go functions. (Research Project)

flake-file - Novel flake.nix generator for the flake-parts community. (Nix Tooling)

import-tree - Nix file loader. Easy, configurable, with extensible API. (Nix Tooling)

dendrix - Community-driven Nix Distribution. (Dendritic Nix Community)

nix-versions - Find and pin nix pkgs at known stable ranges (Nix Community)

vix - My NixOS multi-host, automated Dendritic configuration.

For a full list of my projects, see my GitHub repositories.


Having a life with purpose

I believe my life has a purpose. And that purpose for me is Love.

I believe that we are not the authors of Love, but Love is has authored us. And as much as we are willing to receive it (God/Love) we will also be able to give it into others.

None of us is perfect and we all have made wrong, but there's so much in life than only our past. Learn, change, adapt, become a better person every single day.

So, having a purpose in life, for me, means having the willingness to be transformed by Love and be able to give it for others.

Contact

I'm always open to remote opportunities

I love to work on developer tools, compilers, effect systems, or nix-infra tooling.

Nowadays I prefer doing Nix, Elm, Scala3, Rust and Go.

Here's my CV

Feel free to reach out if you’d like to collaborate or discuss opportunities or just talk about common interests or projects.

stats


About me

I love poetry, Rothko paintings, the Rebecca purple color and effect systems.

I'm a Seventh Day Adventist. I enjoy our Sabbath School so much, self-reflecting, learning lessons from the Bible that can teach me about the real character of God and the love he gives us for us to give.

I also enjoy reading about Religions, Theology, Physics, Math (mainly related to C.S), Type Theory and Effect Systems.

I have a ~50% hearing disability. So I pretty much prefer to communicate via async written form whenever possible.

I love customizing my Glove80 Keyboard, and layout optimizations that can reduce finger stress.

I'm doing lots of Nix, Scala3, Go and Rust. And love creating stuff for people like me: nerds.


Table of Contents


OpenSource Mission

Everything I know, I've learned by reading others code. I believe in the power of sharing knowledge.

I create tools and languages that empower developers by making their work more productive, reliable, and enjoyable.

My passion is building robust, real-world solutions with functional programming, effect systems, and language implementation.

Skills

  • Functional programming (Scala, Haskell, Elm, Elixir)
  • Effect systems and concurrency models
  • Compiler and language implementation (Scala, Rust, Go, Ruby, Python)
  • Nix and reproducible developer tooling
  • Open source leadership and community building

Things I enjoy doing:

I love working in the following areas:

  • Compiler and language implementation
  • Effect systems research and development
  • Developer tooling and infrastructure
  • Functional programming projects

If you’re building something in these areas, let’s connect!

Notable Projects & Contributions

Here are some of my original open source projects, spanning several languages and ecosystems:

Scala

  • zio-logic - μKanren-inspired relational/logic programming for ZIO2.
  • mill-docker - Minimalist distroless Docker images for Java apps using Mill.
  • scala-double-linked-list - Immutable double linked list in Scala 3.
  • scala-cli-g8 - Giter8 launcher for scala-cli.
  • laminar_cycle - Cycle.js style user-computer model in Laminar.
  • nonono - Scala 3 compiler plugin to prevent unsafe function calls.
  • katan - Logic programming language based on typed concatenative effects (Scala prototype).
  • mill-buildr - Define big project structures as a regular Scala project.
  • cyclone - Functional-reactive interfaces on Laminar and Scala.js.

Elixir

  • params - Ecto-style parameter validation/casting.
  • pit - Macro for extracting/transforming values in pipe flows.
  • happy_with - Macro to avoid commas in Elixir's with special form.
  • spec - Data specification conformance and generation.
  • expat - Reusable, composable patterns across Elixir libraries.
  • ok_jose - Pipe Elixir functions that match ok/error tuples or custom patterns.
  • pond - State-aware Elixir functions without spawning processes.
  • deco - Minimalist function decorators for Elixir.
  • pipe_here - Macro for easily piping arguments at any position.
  • happy - The alchemist's happy path with Elixir.
  • indifferent - Elixir Indifferent access on maps/lists/tuples with custom key transforms.

Emacs Lisp

  • rebecca-theme - The purple turtle theme for Spacemacs.
  • vee - Vic's Emacs Environment.
  • ido-better-flex - Better fuzzy matching for Emacs ido-mode.
  • color-theme-buffer-local - Set Emacs color themes by buffer.
  • keymap-suggest.el - Let Emacs suggest which key bindings to press.

Go

  • nix-versions - Search Nix package versions and minimalist devshell/version manager.
  • leader - Vim/Evil leader-key for your $SHELL.

Rust

  • fx-rs - Algebraic Effects System in Rust.

Shell/Bash

  • SPC - Send keyboard macros to Spacemacs or DOOM Emacs via emacsclient.
  • docker-layered-fatjar - Create reusable Docker layered images from Java fat-jar apps.
  • heroku-buildpack-nim - Deploy Nim applications to Heroku.
  • pinocchio - Git-based server provisioning.

Nix

  • import-tree - Import all Nix files in a directory tree.
  • dendrix - Community-driven Nix distribution.
  • flake-file - Generate flake.nix from module options.

Other Significant Contributions (Forks & Community)

  • Buildr: Core contributor and Apache Software Foundation PMC member for it.
  • asdf-vm: Maintainer and plugin author for the extensible version manager.
  • Rubinius: Early contributor to the Ruby VM.
  • Fancy Language: Contributor of a dynamic, functional OO language.
  • Typhon: Python implementation for Rubinius VM.
  • effects-bibliography: Collaborative bibliography of computational effects.

For a full list of my projects, see my GitHub repositories.


visitors

Popular repositories Loading

  1. params params Public

    Easy parameters validation/casting with Ecto.Schema, akin to Rails' strong parameters.

    Elixir 369 50

  2. expat expat Public

    Reusable, composable patterns across Elixir libraries

    Elixir 176 5

  3. rebecca-theme rebecca-theme Public

    The purple turtle theme for Spacemacs

    Emacs Lisp 126 11

  4. ok_jose ok_jose Public

    Pipe elixir functions that match ok/error tuples or custom patterns.

    Elixir 100 2

  5. apollo-phoenix-websocket apollo-phoenix-websocket Public

    An Apollo networkInterface for executing GraphQL queries via Phoenix Channels

    JavaScript 91 9

  6. typhon typhon Public

    Snakes on rbx-head. A Python implementation for the Rubinius VM

    Ruby 82 8

0