I have a very basic question regarding OCaml records. Suppose I have a record defined:
type r = {a: int; b: int; c: int}
let x = {a=3; b=8; c=2}
Now, suppose I want to create a new record which has all fields equal to x
but which has c=4
. I could write:
let y = {a=3; b=8; c=4}
but this is annoying because there's not need to re-write a=3
and b=8
. I could also write:
let y = {a=x.a; b=x.b; c=4}
but this is still not good if the record has many fields. Is there any way of writing something like:
let y = {x with c=4}
or something of the sort?
yeah, and that's the exact syntax.
let y = {x with c=4}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With