More formally, a bitstring in Erlang is of the form:

```
<<Sengment1, ..., Segment_N>>
```

And a segment is:

```
Segment = Value | Value:Size | Value/TypeSpecifiers | Value:Size/TypeSpecifiers
TypeSpecifiers = Endianess-Sign-Type-Unit
Endianess = big | little | native
Sign = signed | unsigned
Type = integer | float | binary
Unit = 1 | 2 | ... | 255
```

Please let us rusteceans have it :)