TalkTalk is a programming language that looks a little like Swift or Rust. It checks your code before it runs, but tries to figure out most types for you.

This manual starts with small programs and works up to TalkTalk's more unusual features. The language is experimental and still changes quickly. Source files use .tlk, and the command-line tool is called talk.

Start here

  1. Getting Started
  2. Syntax
  3. Values and Types
  4. Bindings and Functions
  5. Data and Patterns
  6. Generics and Protocols
  7. Effects
  8. Ownership and Memory
  9. Collections and Text
  10. Modules and Packages
  11. Macros
  12. Concurrency
  13. Testing
  14. The Standard Library
  15. The Toolchain
  16. Unsafe Code and Interop

Conventions

Code meant for TalkTalk is fenced as tlk; terminal sessions are fenced as sh. Examples usually rely on the core library, which normal source files import automatically. A first line of // no-core disables that import for compiler and core-library work.

The short command reference built into the compiler is also useful:

talk llm