on the implementation side I can use `[val p: Prom...
# announcements
p
on the implementation side I can use
[val p: Promise<Foo>;] p.map {}
but that feels quite dirty.