Tadpole Stage 0
The native systems programming language for CheddarOS. As C is to Unix, Tadpole is to CheddarOS.
Strongly Typed & Immutable
Variables are immutable by default with explicit mut markers for state changes. Unambiguous physical primitive widths (utiny through udouble) leave zero room for undefined sizing behavior.
Record-Based OOP Methods
Direct object-oriented method dispatch with zero vtable bloat. Method calls lower directly to static calls passing the instance as self at register index 0 under MS x64 conventions.
Child-Simple Readability
Rejects cryptic punctuation in favor of clear English semantics. Control flows and declarations use clean connectors like is, as, provides, using, and otherwise instead of complex overloaded symbols.
Self-Sufficient Native Toolchain
Operates with zero external toolchain friction. Tadpole compiles and emits natively without third-party assemblers (NASM, GNU as), external C preprocessors, or foreign linkers.
OS-Grade Sandboxed Assembly
Inline assembly blocks feature mandatory byte alignment (align(16)), automatic register clobber guardrails, and safe dual-mode input/output register bindings for bare-metal kernel work.
Deterministic Memory Bounds
No hidden heap allocations and zero runtime garbage collection pauses. Pointer operations are strictly tracked, safe, and require unambiguous .val access for dereferencing.
Hardware Register First-Class Aliases
Physical CPU registers (rax, ebx, r8) act as first-class language keywords that map directly into native primitive types for zero-overhead silicon execution.
Tadpole Language & Kernel Hierarchy
- Target Environments: Bullfrogg Kernel (L1), System Services (L2), Lilypad Apps (L4)
- Memory Execution: Strict Bounds, Zero GC Runtime, Deterministic Stack Allocations
- Object Model: Record Types, Encapsulated Methods, Zero-Cost Static Lowering
- Type Layout:
utiny(u8),ushort(u16),uinteger(u32),ulong(u64),udouble(u128) - Core Paradigm: Systems Expressiveness, Low-Cognitive Overhead, Ahead-Of-Time Native Compilation