Skip to content

Latest commit

 

History

History
56 lines (43 loc) · 3.64 KB

README.md

File metadata and controls

56 lines (43 loc) · 3.64 KB

bork documentation

bork is a programming language for backend services. These pages describe the language as it works today.

Start

The language

Each page covers one area in plain terms, with code you can run. Follow the Previous/Next links through the same order.

Page What it covers
Scripts Executable single files, top-level statements, shebangs, and inline Go dependencies
Basics Names, rebinding, functions, control flow, loops, tail calls, and printing
Types Records, sealed types, unions, Option, Ok, and generics
Matching and errors match, patterns, exhaustiveness, and ?
Collections Lists, maps, lazy sequences, bytes, and parallel list operations
Facts Predicates, where, and what the compiler proves
Effects uses, pure functions, and ambient values
Scopes and tasks Resources, tasks, channels, shared state, cancellation, process signals, and lazy and async bindings
Channels Sending and receiving between tasks, closing, producers, select, timeouts, and pipelines
Packages and type classes Packages, modules, imports, type classes, derived instances, and dependency assembly
Libraries Dependencies, publishing, private modules, and reusable packages
Compile-time evaluation comptime blocks and reading files at build time
Typed interpolation s"...", sql.SQL"...", and defining your own prefix
Derivation templates Custom class derivation with typed shape metadata
Calling Go unsafe go, bindings to Go functions, and Go dependencies
Testing Tests, snapshots, mocks, and property tests

Quick references

Reference

For contributors