This sounded interesting so I have started a posit implementation here. It

supports posits of any size less or equal than 32 bits with any value of ES. It

supports the four basic arithmetic operations and conversions from/to `f64`

.

I was looking for efficient float math for a FPU-less (Cortex-M) processor but

my posit implementation is 2-3x slower (I made zero effort towards optimizing it

though) than emulated ieee754 floats :-/ so I’m going to stick to fixed point

arithmetic for now even though is suffers from overflows / underflows and I have

to be careful about the range of operations.

Unscientific micro-benchmark below

CPU: Cortex-M3

Numbers are clock cycles

```
| Format | + | * |
|-------------- |-----|-----|
| P32E6 (posit) | 187 | 225 |
| Q16.16 (FPA) | 23 | 29 |
| f32 | 107 | 78 |
```

FPA = fixed point arithmetic

P32E6 = 32-bit posit with ES = 6

Q16.16 = fixed point number, 16-bit for the integer part, 16-bit for the fractional part

f32 is software emulated (compiler-rt)

```
| Format | + | * |
|-------------- |-----|-----|
| P32E6 (posit) | 208 | 233 |
| Q16.16 (FPA) | 23 | 29 |
| f32 | 104 | 78 |
```