About KelpyShark
What it is, why it exists, and how it works.
What is KelpyShark?
KelpyShark is a dynamically-typed, interpreted programming language designed to be easy to learn and pleasant to write. Its syntax is clean and expressive — there are no semicolons, no mandatory type annotations, and minimal boilerplate. Whether you are writing your first program or your hundredth, KelpyShark stays out of your way.
Design goals
- Beginner-friendly — clear error messages, simple syntax, no hidden complexity
- Readable — code should read like plain English where possible
- Batteries-included — a standard library covering maths, strings, files, JSON, HTTP, and system access
- Portable — runs on Windows, Linux, and macOS without modification
- Fast to start — a single binary, no runtime to install separately
How it works
KelpyShark code goes through three stages before it runs:
- Lexer — source text is scanned into a stream of tokens (numbers, strings, keywords, identifiers, operators, …)
- Parser — the token stream is structured into an Abstract Syntax Tree (AST)
- Interpreter — the AST is walked and each node is evaluated directly, producing output
Optionally, the compiler can target native code (via an LLVM backend) or cross-compile to Java or C# source for use in other ecosystems.
Project structure
| Crate / Directory | Purpose |
|---|---|
compiler/ | Lexer, parser, AST, semantic analysis, code generation |
interpreter/ | Tree-walking interpreter and runtime values |
stdlib/ | Built-in modules (math, strings, io, json, sys, http) |
cli/ | Command-line interface (kelpyshark binary) |
package_manager/ | Package registry, installer, dependency resolver |
formatter/ | VS Code syntax-highlighting extension |
License
KelpyShark is open-source software. See the repository root for license details.