compute

inline fun <T, R> T.compute(computeBlock: (T) -> R): R