Re: [swift-evolution] RFC: Preventing Retain Cycles (Memory Ownership Model)

2016-07-29 Thread Andrew Bennett via swift-evolution
Thanks for the detailed response :) My mistake, I was thinking more in terms of managing a user's expectations regarding ownership and avoiding retain cycles. What you've described sounds great. I imagine it should only affect this proposal if the solution it provides adds additional checks for

Re: [swift-evolution] RFC: Preventing Retain Cycles (Memory Ownership Model)

2016-07-29 Thread Andrew Bennett via swift-evolution
Answers inline: On Sat, Jul 30, 2016 at 2:17 PM, Félix Cloutier wrote: > Seems to me that we can find similar information just from walking over a > class's fields to build an ownership graph, and cause warnings/errors when > you find a strong cycle. > This is true, but the

Re: [swift-evolution] Improved value and move semantics

2016-07-29 Thread Karl via swift-evolution
> On 29 Jul 2016, at 18:42, Bram Beernink via swift-evolution > wrote: > > Hi all, > > Would it be possible to improve value and move semantics (performance) in > Swift? Consider this possible Swift code in a future release of Swift: > > let array1 : [String] =

Re: [swift-evolution] [Swift4] Mailing list vs. Forum

2016-07-29 Thread Muse M via swift-evolution
I'm open to ZenHub that can be integrate as part of GitHub for discussion, pull changes and it makes it easier to reference to the patches within ZenHub than from Discourse or other forums. Swiftly right? https://www.zenhub.com On Sat, Jul 30, 2016 at 10:10 AM, Tim Vermeulen via swift-evolution

Re: [swift-evolution] RFC: Preventing Retain Cycles (Memory Ownership Model)

2016-07-29 Thread Chris Lattner via swift-evolution
On Jul 29, 2016, at 6:42 PM, Andrew Bennett via swift-evolution wrote: > I wrote this a few months ago, but we weren't accepting additive proposals. > Now we're explicitly looking for something like this: > > Memory ownership model: Adding an (opt-in) Cyclone/Rust

Re: [swift-evolution] RFC: Preventing Retain Cycles (Memory Ownership Model)

2016-07-29 Thread Félix Cloutier via swift-evolution
Seems to me that we can find similar information just from walking over a class's fields to build an ownership graph, and cause warnings/errors when you find a strong cycle. How do you deal with type erasure? > protocol Foo {} > class A { > var foo: Foo > } > class B: Foo { > var

Re: [swift-evolution] [Swift 4] Organizing source stability

2016-07-29 Thread Chris Lattner via swift-evolution
> On Jul 29, 2016, at 5:55 PM, Jacob Bandes-Storch wrote: > > Here are a few thoughts: > -swift=4 > -swift-version=4 -swift-version seems like the best option to me, but Jordan will have a strong opinion. I think he’s crazy busy with Swift 3 work until late next week.

Re: [swift-evolution] RFC: Preventing Retain Cycles (Memory Ownership Model)

2016-07-29 Thread Andrew Bennett via swift-evolution
Interesting, I'm not familiar with the history of the feature in Rust. Are you able to provide more details on what went wrong in practice? This proposal may be different, this is not attempting to do it without GC. What I'm suggesting still uses ARC (assuming you were counting ARC as GC). It

Re: [swift-evolution] RFC: Preventing Retain Cycles (Memory Ownership Model)

2016-07-29 Thread Joe Groff via swift-evolution
Rust attempted this sort of type-directed cycle prevention early in its development, when it was attempting to provide language-supported shared references without GC, and it didn't work out well for them in practice. -Joe > On Jul 29, 2016, at 6:42 PM, Andrew Bennett via swift-evolution >

[swift-evolution] [Swift4] Mailing list vs. Forum

2016-07-29 Thread Tim Vermeulen via swift-evolution
+1. Hirundo makes this format bearable, but it is still far from ideal. I see many advantages for using Discourse: - It has actual syntax highlighting. - It’s easier to moderate. - It supports real-time updates. - It’s easier to follow the flow of a conversation. - It has better search. I don’t

[swift-evolution] RFC: Preventing Retain Cycles (Memory Ownership Model)

2016-07-29 Thread Andrew Bennett via swift-evolution
I'd like an *opt-in* way to verify and prevent *unintentional strong references* in Swift. This can be used to verify ownership structures, and ultimately avoid retain cycles. Read a draft proposal here:

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Chris Lattner via swift-evolution
> On Jul 29, 2016, at 6:14 PM, Daniel Duan wrote: > > >> On Jul 29, 2016, at 5:59 PM, Brandon Knope via swift-evolution >> > wrote: >> >> Where can we learn what affects the ABI? (Google, yes, but is there a highly

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Chris Lattner via swift-evolution
On Jul 29, 2016, at 5:53 PM, Magnus Ahltorp wrote: >>> Is it appropriate to discuss high-level topics that are not one of the >>> topics on your list? Example: Decreasing the number of cases where unsafe >>> constructs have to be used. >>> >>> If it is not, how do topics get on

[swift-evolution] [Swift4] Mailing list vs. Forum

2016-07-29 Thread Jacob Bandes-Storch via swift-evolution
Branching... On Fri, Jul 29, 2016 at 5:22 PM, Chris Lattner via swift-evolution < swift-evolution@swift.org> wrote: > On Jul 29, 2016, at 5:14 PM, Brandon Knope wrote: > > > > Chris, has the core team discussed opening up a forum for discussing > proposal implementations. > > > >

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Brandon Knope via swift-evolution
Thanks for this! This looks great! Brandon > On Jul 29, 2016, at 9:14 PM, Daniel Duan wrote: > > >> On Jul 29, 2016, at 5:59 PM, Brandon Knope via swift-evolution >> wrote: >> >> Where can we learn what affects the ABI? (Google, yes, but is there

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Daniel Duan via swift-evolution
> On Jul 29, 2016, at 5:59 PM, Brandon Knope via swift-evolution > wrote: > > Where can we learn what affects the ABI? (Google, yes, but is there a highly > respected document or article?) > This is a really good question, if we expect lots of discussion on this

Re: [swift-evolution] [Swift 4] Organizing source stability

2016-07-29 Thread Jacob Bandes-Storch via swift-evolution
Here are a few thoughts: - -swift=4 - -swift-version=4 - -language-version=4 - a top-of-file "shebang"-style comment indicating the version, something like //#swift(4), mirroring the "#if swift" syntax On Fri, Jul 29, 2016 at 5:27 PM, Chris Lattner wrote: >

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Magnus Ahltorp via swift-evolution
> 30 Jul 2016 02:38 Chris Lattner wrote: > >> On Jul 29, 2016, at 5:29 PM, Magnus Ahltorp wrote: >> >>> 30 Jul 2016 02:17 Chris Lattner via swift-evolution >>> wrote: >>> >>> Moving into early Swift 4 planning and development, we

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Chris Lattner via swift-evolution
> On Jul 29, 2016, at 5:29 PM, Magnus Ahltorp wrote: > >> 30 Jul 2016 02:17 Chris Lattner via swift-evolution >> wrote: >> >> Moving into early Swift 4 planning and development, we have no desires >> beyond what I listed in the big email. There is no

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Magnus Ahltorp via swift-evolution
> 30 Jul 2016 02:17 Chris Lattner via swift-evolution > wrote: > > Moving into early Swift 4 planning and development, we have no desires beyond > what I listed in the big email. There is no long laundry list, it is a few > specific (big!) topics. > > We

Re: [swift-evolution] [Swift 4] Organizing source stability

2016-07-29 Thread Chris Lattner via swift-evolution
> On Jul 29, 2016, at 5:20 PM, Jacob Bandes-Storch via swift-evolution > wrote: > > Chris writes: > - Source stability features: These should be relatively small, but important. > For example, we need a “-std=swift3” sort of compiler flag. We may also add > a way

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Chris Lattner via swift-evolution
On Jul 29, 2016, at 5:14 PM, Brandon Knope wrote: > > Chris, has the core team discussed opening up a forum for discussing proposal > implementations. > > Some of us aren't as skilled as the core team or other contributors but would > like to learn. A forum is a much easier

[swift-evolution] [Swift 4] Organizing source stability

2016-07-29 Thread Jacob Bandes-Storch via swift-evolution
Chris writes: > - *Source stability features: *These should be relatively small, but > important. For example, we need a “-std=swift3” sort of compiler flag. We > may also add a way to conditionally enable larger efforts that are under > development but not yet stable - in order to make it

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Chris Lattner via swift-evolution
On Jul 29, 2016, at 5:05 PM, Erica Sadun wrote: >> I expect/hope each of the topics listed in the email to turn into active >> threads of discussion. If you or others have questions about them, feel >> free to ask now. That said, major design work on them probably won’t

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Brandon Knope via swift-evolution
Chris, has the core team discussed opening up a forum for discussing proposal implementations. Some of us aren't as skilled as the core team or other contributors but would like to learn. A forum is a much easier place for us to post for code help and to help others with their questions. I

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Erica Sadun via swift-evolution
> On Jul 29, 2016, at 5:43 PM, Chris Lattner wrote: > > On Jul 29, 2016, at 4:26 PM, Erica Sadun wrote: >> Things I'd like to see: >> >> * On the Swift Evolution repository site, a wish list from core engineers, >> with a précis for each topic, a

Re: [swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Chris Lattner via swift-evolution
On Jul 29, 2016, at 4:26 PM, Erica Sadun wrote: > Things I'd like to see: > > * On the Swift Evolution repository site, a wish list from core engineers, > with a précis for each topic, a priority estimate, and contact information > for the team (which can be none through

[swift-evolution] [Swift4] Priorities and Sugar

2016-07-29 Thread Erica Sadun via swift-evolution
Things I'd like to see: * On the Swift Evolution repository site, a wish list from core engineers, with a précis for each topic, a priority estimate, and contact information for the team (which can be none through "willing to mentor"). Using a central document is key. Placing requests on-list

[swift-evolution] Looking back on Swift 3 and ahead to Swift 4

2016-07-29 Thread Chris Lattner via swift-evolution
Hello Everyone, The Swift 3 release is nearing completion, so it is time to look back on the release, learn from what happened, and use it to shape what we (the Swift community) do in the year ahead. Overall, Swift 3 is going to be an absolutely *amazing* release, and it is impressive how

[swift-evolution] [Review] SE-0135: Package Manager Support for Differentiating Packages by Swift version

2016-07-29 Thread Daniel Dunbar via swift-evolution
Hello Swift community, The review of "SE-0135: Package Manager Support for Differentiating Packages by Swift version" begins now and runs through August 3rd. The proposal is available here:

Re: [swift-evolution] [Meta] What does the backlog mean to the process?

2016-07-29 Thread David Sweeris via swift-evolution
Oh gosh yes. I’ve been working on a bug off and on for a while, and half the reason it isn’t fixed yet is that I can’t wrap my head around how modern compilers work (which isn’t really saying much since this is the only compiler I’ve looked at). > On Jul 29, 2016, at 11:32 AM, Brandon Knope

Re: [swift-evolution] [Meta] What does the backlog mean to the process?

2016-07-29 Thread Chris Lattner via swift-evolution
> On Jul 29, 2016, at 8:48 AM, Daniel Vollmer via swift-evolution > wrote: > > Hi, > >> On 29 Jul 2016, at 17:15, Félix Cloutier via swift-evolution >> wrote: >> >> Hello all, >> >> With the Swift 3 deadline passed, according to the

[swift-evolution] Improved value and move semantics

2016-07-29 Thread Bram Beernink via swift-evolution
Hi all, Would it be possible to improve value and move semantics (performance) in Swift? Consider this possible Swift code in a future release of Swift: let array1 : [String] = ["Val1", "Val2"] let array2 = array1.appended(“Val3”) // Copy of array1 with “Val3” appended. array1 is left

Re: [swift-evolution] [Meta] What does the backlog mean to the process?

2016-07-29 Thread Mark Lacey via swift-evolution
> On Jul 29, 2016, at 09:30, Karl via swift-evolution > wrote: > > >> On 29 Jul 2016, at 18:01, Brandon Knope via swift-evolution >> wrote: >> >> I think this just shows how familiar many of us are with this process. >> >> It’s fun

Re: [swift-evolution] [Meta] What does the backlog mean to the process?

2016-07-29 Thread Brandon Knope via swift-evolution
This too. I think some better documentation for all of us could pay great dividends. Or a primer of some sort. A weekly series diving into the common parts of LLVM? Brandon > On Jul 29, 2016, at 12:30 PM, Karl wrote: > > >> On 29 Jul 2016, at 18:01, Brandon Knope via

Re: [swift-evolution] [Meta] What does the backlog mean to the process?

2016-07-29 Thread Karl via swift-evolution
> On 29 Jul 2016, at 18:01, Brandon Knope via swift-evolution > wrote: > > I think this just shows how familiar many of us are with this process. > > It’s fun and challenging coming up with the great ideas…but someone has to > implement it. It may not be fun…and it

Re: [swift-evolution] [Meta] What does the backlog mean to the process?

2016-07-29 Thread Brandon Knope via swift-evolution
I think this just shows how familiar many of us are with this process. It’s fun and challenging coming up with the great ideas…but someone has to implement it. It may not be fun…and it may be very time consuming. I think a lot of us just expected the core team to implement these all…but they

Re: [swift-evolution] [Meta] What does the backlog mean to the process?

2016-07-29 Thread Daniel Vollmer via swift-evolution
Hi, > On 29 Jul 2016, at 17:15, Félix Cloutier via swift-evolution > wrote: > > Hello all, > > With the Swift 3 deadline passed, according to the Swift Evolution progress > page, about 20% of the proposals that the community voted in won't make it > for Swift 3.

[swift-evolution] [Meta] What does the backlog mean to the process?

2016-07-29 Thread Félix Cloutier via swift-evolution
Hello all, With the Swift 3 deadline passed, according to the Swift Evolution progress page, about 20% of the proposals that the community voted in won't make it for Swift 3. Beyond the implications for the language itself, what does that mean for the swift-evolution process? Félix

Re: [swift-evolution] Arrays and variadic parameters

2016-07-29 Thread Tim Vermeulen via swift-evolution
I agree mostly with what you’re saying, but variadic parameters don’t actually require at least one element. `max` simply returns a non-optional because its function signature has three non-variadic parameters as well: public func max(_ x: T, _ y: T, _ z: T, _ rest: T...) -> T > This has been

Re: [swift-evolution] [Proposal]Allow constraints on associatedtype and shorten type constraints list in function

2016-07-29 Thread Susan Cheng via swift-evolution
Thanks. I found this proposal in pull requests after the email sent. Anders Ha 於 2016年7月29日星期五 寫道: > It is one of the items in the Generics Manifesto, and we had a discussion > thread with a proposal on this already, however halted for being an > addictive feature. Anyway,

Re: [swift-evolution] [Proposal]Allow constraints on associatedtype and shorten type constraints list in function

2016-07-29 Thread Anders Ha via swift-evolution
It is one of the items in the Generics Manifesto, and we had a discussion thread with a proposal on this already, however halted for being an addictive feature. Anyway, aren't discussions on post Swift 3 matters preferred to start on Aug 1? Hart's proposal

Re: [swift-evolution] Arrays and variadic parameters

2016-07-29 Thread Charlie Monroe via swift-evolution
This has been brought up and there was a proposal by Haravikk, but the discussion started almost mid-July and the deadline for all Swift 3 *implementation* was on Jul 27. So it didn't make it, but I think there will be enough discussion about it on Aug 1 and after (all discussion about features

[swift-evolution] Arrays and variadic parameters

2016-07-29 Thread Alexandre Lopoukhine via swift-evolution
Hello all, I'm not sure if this has been brought up before, or what the status of the issue is as of Swift 3, but I was wondering why there is no option to call a function that takes a variadic parameter argument with an array. Seen as the parameter essentially becomes an array, and is used as