func f() throws(BError) -> T let r = Result<T, AError> { try f() }
func f() throws(BError) -> T let r = Result { try f() } // 型パラメータ不要