I have the following code:

```
    type point  = { x : float; y : float; z : float }
    type dpoint = { dx : float; dy : float; dz : float }
    type physical_object = { position : point; velocity : dpoint }
    let move p dp = {x = p.x + dp.x; y = p.y + dp.y; z = p.z + dp.z} 

```

I am getting this error:

```
File "code.ml", line 4, characters 21-24:
Error: This expression has type float but an expression was expected of type
         int

```

`p.x` is highlighted

Why is this?
Am I not referencing the record's fields correctly?