Use a + variance annotation on a type parameter to mark it as covariant.
+
type source<+'a> = unit => 'a let fromValue = (x: 'a): source<'a> => () => x
Type Parameters