← all projects

toolingBuilt by Claude2026

c′ and skyblue

https://github.com/mas-4/cprime

c′ (c-prime, the derivative of C, so its files end in .dcdx) is a language idea I had in 2023: C plus the smallest possible version of classes. Structs get methods, the receiver is called ego, and . and -> mean the same thing. Here's a Hello, World:

#include <stdio.h>

struct Greeter {
  char *name;
  void greet(void);
};

void Greeter.greet(void) {
  printf("Hello, %s!\n", ego.name);
}

int main(void) {
  struct Greeter g = {"world"};
  g.greet();
  return 0;
}

In October 2026, Claude built it at my direction. cprime is a c′ compiler forked from Rui Ueyama's chibicc. It's written in c′ itself, bootstraps from a frozen C copy, and checks that every stage compiles the compiler to identical assembly. skyblue is bluesky rewritten in c′ as a small compiler (lexer, parser, renderer), and it's what builds this site now. The projects page you came from is, more or less, this:

<sky-template path="main.html" />

<sky-block name="title">Projects · </sky-block>

<sky-block name="content">
  <h1>Projects</h1>
  <div class="cards">
    <sky-markdown directory="projects" template="project.html"
                  item="card.html" sort="order" />
  </div>
</sky-block>

main.html is the layout, with a <sky-slot> for each block; every markdown file in projects/ becomes a page through project.html, and a card through card.html.

The ideas are mine; the code is Claude's.

$ skyblue --version
skyblue 1f55086 (compiled by cprime b148357)
$ skyblue -i src -o build
skyblue: 37 pages and 24 files -> build
# 2026-10-18, 15:27 UTC, 223 ms. Two small scripts: the candle and the light switch.