Description #
BQN (Big Questions Notation) is a modern, array-oriented programming language that builds on the ideas of APL and J, emphasizing clarity, power, and open-source accessibility.
History #
BQN was created in 2020 by Marshall Lochbaum, a former J developer, to address readability and modern tooling limitations of earlier array languages. It’s designed for high-performance, concise computing while being more accessible than APL’s symbolic syntax.
Hello World Code #
"Hello, World!"
How to Run #
Option 1: Online
https://mlochbaum.github.io/BQN/try.html
Option 2: Local
Install the BQN reference implementation:
git clone https://github.com/mlochbaum/BQN.git
cd BQN
./BQN
Run code directly in the REPL or load from a file.
Key Concepts #
- Array-oriented like APL and J
- Unicode symbols and ASCII alternatives
- Functional with tacit (point-free) style
- Concise, compositional expressions
- Dynamically typed
- High-performance interpreter (CBQN)
- Powerful primitives and derived functions
- REPL and scripting support
- Great for numerical and symbolic tasks
- Free and open-source under ISC license
Try It Online #
https://mlochbaum.github.io/BQN/try.html
Fun Facts #
- BQN uses readable ASCII alternatives to APL’s glyphs to improve approachability.
- It can express complex array operations in a single line.
- CBQN (Co-dfns BQN) is its main high-performance runtime, written in C.