View this file with results and syntax highlighting here.
BQN's documentation describes what features it has, how to use them (with examples), and why they were chosen. For a linear introduction to the language, see the tutorials. For all of the particulars without so much discussion, see the specification.
The quick start page is a hands-on way to see what features BQN offers so you can start with the parts you're most interested in.
Overview:
- Syntax
- Types
- Primitives
- Paradigms
- See also help index; summary gist
- And system values (not always implemented)
References:
Concepts:
- Tokens and constants
- Expression syntax
- Arrays
- Functions and modifiers
- Tacit programming
- Blocks
- Namespaces
Primitives:
- Arithmetic:
+-×÷⋆√⌊⌈|≤<>≥=≠
- Array depth:
≡
and⚇
- Array dimensions:
≢=≠
- Assert and Catch:
!
and⎊
- Atop and Over:
∘○
- Before and After:
⊸⟜
- Cells and Rank:
˘⎉
- Choose:
◶
- Constant:
˙
- Deshape and Reshape:
⥊
- Enclose:
<
- Find:
⍷
- Fold and Insert:
´˝
- Group:
⊔
- Identity functions:
⊢⊣
- Indices and Replicate:
/
- Join and Join To:
∾
- Logical functions:
∧∨¬
- Mapping:
¨⌜
- Match:
≡≢
- Ordering functions:
∧∨⍋⍒
- Pair:
⋈
- Pick:
⊑
- Prefixes and Suffixes:
↑↓
- Range:
↕
- Repeat:
⍟
- Reverse and Rotate:
⌽
- Scan:
`
- Search functions:
⊐⊒∊
- Select:
⊏
- Self and Swap:
˜
- Self-search functions:
⊐⊒∊⍷
- Shift functions:
»«
- Solo, Couple, and Merge:
≍>
- Take and Drop:
↑↓
- Transpose:
⍉
- Under:
⌾
- Undo:
⁼
- Valences:
⊘
- Windows:
↕
Environment: