The C3 blog
C3 is the ergonomic, safe evolution of C. Familiar syntax, full ABI compatibility, optionals, slices, contracts and zero-cost abstractions.
- Posts
- 99 from 18 Jan 2020 to 11 Oct 2026
- Posting
- monthly (16 in the last year)
- Kind
- project news
- Feed
- https://c3-lang.org/feed_rss_created.xml
2026 14
- C3 0.8.5 - A windowing library and a C backend??
- 2026
- C3 0.8.4 The last renaming
- If You Have Users, You Have to Market Your Programming Language
- I thought I was building a C replacement. I was wrong
- C3 0.8.3 Feature flags
- C3 0.8.2 A modest improvement
- C3 0.8.1 Raiding the stdlib for bugs
- C3 0.8.0 The Core Language Is Settling
- Let's kill off half the builtins in 0.8.0
- Unsigned sizes: a five year mistake
- C3 0.7.11 - The last v0.7
- C3 0.7.10 - Constdef finally takes shape
- C3 0.7.9 - New generics and new optional syntax
2025 20
- Jingle bells, C3 0.7.8
- 2025
- C3 Language at 0.7.7: Vector ABI, RISCV improvements and more
- C3 Language at 0.7.6: Shebang, generic inference and lengthof()
- C3 Language at 0.7.5: Language tweaks and conveniences
- C3 0.7.4 Released: Enhanced Enum Support and Smarter Error Handling
- How C3 Manages Memory Without Leaks, GC, or Borrow Checkers
- C3 0.7.3 - Small Improvements
- C3 0.7.2 - Quality Of Life
- Gradual improvements: C3 0.7.2
- C3 0.7.1 - Operator Overloading
- C3 0.7.1 - Operator overloading, here we come!
- C3 goes game and maths friendly with operator overloading
- C3: Operator overloading is coming in 0.7.1
- C3 0.7.0 - One Step Closer To 1.0
- C3 0.7 released - one step closer to 1.0
- Some tips organizing code in C3
- An early 0.6.8 release
- It's February and time for a new C3 release: 0.6.7
- Another monthly release: C3 0.6.6 is here
2024 15
- Why doesn't C3 do import aliasing?
- 2024
- More splat and bug fixes: C3 0.6.5 is released
- New contract syntax with 0.6.4
- Welcome to C3 version 0.6.3
- A big fat release: C3 0.6.2
- Fixes and improvements: C3 0.6.1 is here
- C3 reaches the 0.6 milestone!
- Why does C3 use 'fn'?
- A new site and v0.5.5
- C3 0.5.4 is out!
- Regarding programming forums and such
- How bad is LLVM really?
- Syntax - when in doubt, don't innovate
- C3 0.5.3 Released
2023 14
- Say hello to C3 0.5
- 2023
- Too much power, too poor accuracy - the story of $checks in C3
- Some guidelines to new syntax design
- Compile-time and short-circuit evaluation
- Inspirations for C3's features
- Language design bullshitters
- Updating keywords for 0.5
- Some language design lessons learned
- Four ways to ways when you need a variably sized list in C3
- A look at modules (in general + in the context of C3)
- Considering user-defined numerical types
- Handling parsing and semantic errors in a compiler
- Killing off structural casts
2022 9
2021 17
- Fixing lexical scopes... badly
- 2021
- Implementing lexical scopes in a simple but wrong way
- Some C3 Advent of Code
- C3 Feature List
- Your users will do what you make easy
- Removing features, gaining freedom
- Fixing bugs in our proposal
- Attempting new C3 type conversion semantics
- How to break a + b + c
- Promotion strategies with typed literals
- The problem with untyped literals
- C3: Block comments and mega comments.
- C3: Handling casts and overflows part 2
- C3: Handling casts and overflows part 1
- Overflow trapping in practice
- On arithmetics and overflow