updateDataEnv ((name, DataPos s):sizes) size f = if s == size
                                                 then (name, DataPos $ f s) : updateDataEnv sizes size f
                                                 else (name, DataPos s) : updateDataEnv sizes size f
updateDataEnv ((name, DataPos s):sizes) size f = if s == size
                                                 then (name, DataPos $ f s) : updateDataEnv sizes size f
                                                 else (name, DataPos s) : updateDataEnv sizes size f
updateDataEnv ((name, DataPos s):sizes) size f = if s == size
                                                 then (name, DataPos $ f s) : updateDataEnv sizes size f
                                                 else (name, DataPos s) : updateDataEnv sizes size f