---
sidebar_position: 1
title: Language Basics
---
import { SquiggleEditor } from "../../src/components/SquiggleEditor";
Squiggle supports some simple types and language features.
## Numbers
## Distributions
There are several ways of easily entering distributions. See the [documentation](/docs/Api/Dist/) on distributions for a complete API.
## Lists
Squiggle lists can accept items of any type, similar to those in Python. [API](/docs/Api/List).
## Dictionaries
Squiggle dictionaries work similarly to Python dictionaries. [API](/docs/Api/Dictionary).
## Functions
## Anonymous Functions
## Comments
## Pipes
Squiggle features [data-first](https://www.javierchavarri.com/data-first-and-data-last-a-comparison/) pipes. Functions in the standard library are organized to make this convenient.
truncateLeft(3) |> SampleSet.fromDist |> SampleSet.map({|r| r + 10})`} />
## Standard Library
Squiggle features a simple [standard libary](/docs/Api/Dist).
Most functions are namespaced under their respective types to keep functionality distinct. Certain popular functions are usable without their namespaces.
For example,
SampleSet.fromList // namespaces required
b = normal(5,2) // namespace not required
c = 5 to 10 // namespace not required
""`} />
## Number Prefixes
Numbers support a few scientific notation prefixes.
| prefix | multiplier |
|-----|-------|
| n | 10^-9 |
| m | 10^-3 |
| k | 10^3 |
| M | 10^6 |
| B,G | 10^9 |
| T | 10^12 |
| P | 10^15 |