A fairly common use case is where we have a function that calculates a vector of values, which we want to update the reflection table with (which already has a column of the required name). The add_column function does not allow an already named column to be updated, and I couldn't see another way to achieve this. I had to get around this by checking if the column was already there and if so retrieving it, else creating a new vector and adding it, which felt clunky and required me to have access to the reflection table in the function.