Projekt

Design records

The specification documents behind a language or library feature that is still being built, each opening with a status line that says how much of it exists today.

Diese Seite gibt es noch nicht auf Deutsch, deshalb steht sie hier auf Englisch. Zur englischen Seite

A design record is written before a feature is finished, sometimes before a line of it is implemented. It works out the vocabulary, the trait shapes, the open questions and the gaps against the real checker, in the depth a single language page cannot carry. Every one of them opens with a status line - proposed, partly implemented, or done - so a reader knows how much of what follows exists yet.

What belongs here#

The specification of a feature that spans several packages or several language/ pages: collections, streams, concurrency, encoding, paths, URIs, linear algebra, entities and components, resources, the project file, the natives of std, destructors, the operating system, the VM, the sandbox of receiver scripts, the REPL, networking with TLS and HTTP, the Domain Name System, the first-party packages outside std for databases and other services, the web layer on top of the network, the language server, the debugger, the public release with its website and package registry, where a program may panic, cases with fixed values and bit flags, cases as types of a closed trait, YAML and regular expressions, random numbers, exact decimal numbers, named time zones, command lines, tensors and gradients, the application framework, the JavaScript and PHP back ends, and the brand: the logo, the colours, the type and how the toolchain colours its output. Each is plain Markdown without front matter, linked here rather than copied, and stays where the feature it describes keeps changing. The roadmap orders them into the milestones that are still ahead.

What does not belong here: the compiler's own implementation, which is in internals/; the settled rules of the language, which are in language/ once a feature has a page there; and the reasons behind a decision that no longer needs a whole record, which belong in explanation/.

Design documents#

Esc