> The review of "SE-0102: Remove @noreturn attribute and introduce an empty 
> NoReturn type" begins now and runs through June 27. The proposal is available 
> here:
> 
>       
> https://github.com/apple/swift-evolution/blob/master/proposals/0102-noreturn-bottom-type.md
> 
>       * What is your evaluation of the proposal?

My feeling on this as a non-expert is that the attribute probably does the job 
well enough and that it is rare enough to not matter for virtually all Swift 
programmers. I’m less qualified to talk about the idea of a bottom type, but in 
reading the proposal a few times, I still can’t see what the point of that 
angle is from a 
uses-the-language-to-make-apps-rather-than-experiment-with-type-theory point of 
view.

In terms of complier implementation, I’m *entirely* unqualified, but I 
certainly understand the appeal to make things 
better/simpler/easier-to-maintain. If it helps to get rid of the attribute for 
this purpose, then okay, but personally I think I draw the line at declaring a 
single “official” NoReturn type (or Never or any other name). I don’t think 
that argument is compelling enough. The idea of declaring separate empty types 
based on circumstance is *way* more appealing to me and this was mentioned in 
the alternatives section. This seems like such a rare case that it would be 
worth it to have the extra clarity of intent from naming the return type 
accordingly - such as Exit or InfiniteLoop or whatever.


>       * Is the problem being addressed significant enough to warrant a change 
> to Swift?

I’m not convinced, but I don’t work on the compiler. :)


>       * Does this proposal fit well with the feel and direction of Swift?

I think having separate empty types that clearly illustrate the intent above 
and beyond a single NoReturn type is a more “Swifty" way to go.


>       * If you have used other languages or libraries with a similar feature, 
> how do you feel that this proposal compares to those?

n/a


>       * How much effort did you put into your review? A glance, a quick 
> reading, or an in-depth study?

Tracked the discussion some, when possible, read the proposal a few times.

l8r
Sean

_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to