About Lambdanistan

Here are design documentations for several computer science projects. They range from programming languages to microkernels. Those design documentations are mainly maintained by Wei Tang. Most of them are associated with actual source code.

Here are some configuration files and nixpkgs distributions that I personally use. Some of them contains a secrets submodule, so it might not be directly usable for you. Cherry picking small codes at a time may be the best way to use it.

  1. Dotfiles

    Wei's personal "dotfiles" for his various laptops.

    This repo contains dotfiles managed by Nix and Super User Spark.

  2. NixOS Packages Release

    Package release for servers and laptops.

    Wei’s modified nixpkgs release used in production.

Programming Languages

Exploring theories of programming languages.

  1. Mm

    microKanren in miniKanren.

    mm implements microKanren in miniKanren (both are logic programming languages). MM gets inductive logic programming without explicitly implement any ILP algorithms.

Those are some personal projects about Ethereum and/or Ethereum Classic. Most of them are written in Rust. Note that I work at ETC Dev Team, so you might also be interested to look into the team’s project list.

  1. etclient

    A bare minimal Ethereum and Ethereum Classic client written in Rust.

    A planned Ethereum client that is about to be rolled out around Fall 2017. The goal is to create a full Apache-2 licensed infrustructure for Ethereum in Rust, so that other interesting projects can be rolled out.

  2. etcql

    ETH/ETC GraphQL Interface

    etcql allows users to query all the current account states on the blockchain via the GraphQL interface. It uses a pay-what-you-want subscription. Right now it only supports the Classic blockchain. Ethereum blockchain support might be added if there’s enough interest.

For the Web

Full-stack projects that run in a browser.

  1. Flow

    Simple Flow-based Machine Learning with Tensorflow.

    Flow is a flow-based automation tool that is capable of running simple Machine Learning programs. In Flow, users mainly work with a drag-and-drop flow-based “graph” to create Machine Learning components (trainers and minimizers) and external ones (sending tweets, fetch HTTP endpoints, etc.).

  2. Reread

    Hackable Hacker News Reader.

    A news reader that “recommends” articles based on reading history, written in Python. It handles fetching Hacker News and RSS sources. A simple SGD regression model is there to “predict” which article the user would be most likely to like reading, and display it for the user.


  1. Munje

    A logic programming language.

    This documents a logic programming language designed years ago.

  2. Rux

    A little book about a microkernel in Rust.

    This documents a recent work of a Rust microkernel implementation based on L4-family kernels.