From ad0b7bd66bea72a96378a0bee7f0d10eada3083e Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 11 Mar 2016 11:30:05 -0800 Subject: [PATCH] tweaks to the proposals. --- proposals/0048-generic-typealias.md | 2 +- proposals/0049-noescape-autoclosure-type-attrs.md | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/proposals/0048-generic-typealias.md b/proposals/0048-generic-typealias.md index 0620c23387..c7d727a0aa 100644 --- a/proposals/0048-generic-typealias.md +++ b/proposals/0048-generic-typealias.md @@ -1,6 +1,6 @@ # Generic Type Aliases -* Proposal: [SE-0048: Generic Type Aliases](proposals/0048-generic-typealias.md) +* Proposal: [SE-0048: Generic Type Aliases](0048-generic-typealias.md) * Author: [Chris Lattner](https://github.com/lattner) * Status: **To be scheduled** * Review manager: [Doug Gregor](https://github.com/DougGregor) diff --git a/proposals/0049-noescape-autoclosure-type-attrs.md b/proposals/0049-noescape-autoclosure-type-attrs.md index 43df8d6adc..b46cd68a55 100644 --- a/proposals/0049-noescape-autoclosure-type-attrs.md +++ b/proposals/0049-noescape-autoclosure-type-attrs.md @@ -1,6 +1,6 @@ # Move @noescape and @autoclosure to be type attributes -* Proposal: [SE-0049: Move @noescape and @autoclosure to be type attributes](proposals/0049-noescape-autoclosure-type-attrs.md) +* Proposal: [SE-0049: Move @noescape and @autoclosure to be type attributes](0049-noescape-autoclosure-type-attrs.md) * Author: [Chris Lattner](https://github.com/lattner) * Status: **To be scheduled** * Review manager: [Doug Gregor](https://github.com/DougGregor) @@ -10,14 +10,15 @@ This proposal suggests moving the existing `@noescape` and `@autoclosure` attributes from being declaration attributes on a parameter to being type attributes. This improves consistency and reduces redundancy within the -language, e.g. aligning with the previous Swift 3 decision to move "inout", -and making declaration and type syntax more consistent. +language, e.g. aligning with [SE-0031](0031-adjusting-inout-declarations.md), +which moved `inout`, making declaration and type syntax more consistent. Swift-evolution thread: [here](https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160307/012292.html) ## Motivation -Chris Eidhof noticed an emergent result of removing our currying syntax: it +[Chris Eidhof](https://github.com/chriseidhof) +noticed an emergent result of removing our currying syntax: it broke some useful code using `@noescape`, because we only allowed it on parameter declarations, not on general things-of-function-type. This meant that manually curried code like this: