Goblin
The language
Sheriff
Builds these docs
Rust
Implements Goblin
Goblin is a general-purpose scripting language for tools, generators, simulations, games, and living systems.
Use it like a normal scripting language. Then use the parts other languages leave to frameworks: transitions, overlays, ownership, links, exposure, grids, decisions, and swarmable work.
Goblin is not trying to replace every language. It is built for people who want one language for scripts, content pipelines, procedural generation, simulations, and game logic.
Build CLIs, process files, generate sites, automate projects, and glue tools together without pulling in a giant framework.
Goblin includes primitives for entities that change, relate, influence, own, perceive, target, decide, and exist in space.
Goblin is already used to build Sheriff, a static documentation system. The language is meant to make things, not just describe them.
Goblin is still a scripting language. Read files. Transform data. Generate output. Build tools that live inside your project instead of becoming a second project.
pages | collect_markdown_files("content")
repeat pages as page
render_markdown(page)
xxGoblin also gives you language-level primitives for simulations and game systems: entities, transitions, overlays, ownership, links, exposure, grids, and decisions.
<>Kingdom | name: "name", power: .5, stability: .8
rome <> Kingdom | name: "Rome", power: .9
repeat 300
tick()
xxGoblin's core language stays small, but its object model is built for worlds that move.
Entities can become something else while keeping their identity and relationships intact.
Model effects, statuses, languages, religions, diseases, enchantments, pressure, or influence without rewriting the host.
Treat relationships as first-class: borders, trade, culture, distance, hostility, alliances, and computed connection scores.
Objects can contain, control, hold, lend, borrow, lose, and transfer other objects.
Decide what entities can perceive and target. Keep decisions bounded, local, and world-aware.
Place worlds on maps, generate regions, and mark independent work to run in parallel when the runtime can safely swarm it.
Download Goblin v0.46.2 for Windows or Linux.
Grab the Windows x64 zip or Linux x64 tar.gz from GitHub.
goblin --versiongoblin run hello.gblnGoblin is a language for people who want to make things that move, change, generate, and grow.