I think I&#39;m -1 for this. It feels like something that should exist in a utility library rather than in the standard one.<br><br>I do have an honest question that comes from ignorance rather than malice: has anyone actually used .times in ruby outside of the context of learning or testing? I&#39;ve written a fair amount of ruby and I don&#39;t think I&#39;ve ever seen it in production code. It is definitely a cleaner construct for what it&#39;s trying to do, but I&#39;m having trouble convincing myself it&#39;s a common enough pattern to justify it being standard.<br><div class="gmail_quote"><div dir="ltr">On Fri, Dec 18, 2015 at 6:20 PM Cihat Gündüz &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">By the way and/or for all of you who like the idea of a .times method:<div><br></div><div>I’ve just setup a library for features like this `times` method and implemented the suggested method there. Feel free to contribute code / provide feedback via that third party library (as suggested by Chris) here:</div><div><br></div><div><a href="https://github.com/Flinesoft/HandySwift" target="_blank">https://github.com/Flinesoft/HandySwift</a></div></div><div style="word-wrap:break-word"><div><br></div><div>– Cihat</div></div><div style="word-wrap:break-word"><div><br><div><div><blockquote type="cite"><div>Am 18.12.2015 um 23:42 schrieb Cihat Gündüz via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt;:</div><br><div><div style="word-wrap:break-word">As far as I can remember it was never a goal of Swift to be a purely object-oriented language. Instead I can find expressiveness stated explicitly amongst the three main goals behind the language here: <a href="https://swift.org/about/#platform-support" target="_blank">https://swift.org/about/#platform-support</a><div><br></div><div>Therefore I feel it is okay if the language becomes more expressive in a way that is less object-oriented. I see the suggested method as a functional construct.</div><div><br></div><div>– Cihat</div><div><br></div><div><br><div><blockquote type="cite"><div>Am 18.12.2015 um 23:22 schrieb Kenny Leung &lt;<a href="mailto:kenny_leung@pobox.com" target="_blank">kenny_leung@pobox.com</a>&gt;:</div><br><div><div>I don’t agree with this on the grounds that it isn’t very object-oriented. That is, it does not conform with what one usually associates with an integer. A number has certain intrinsic properties: 5 is greater than 4 but less than 6. If you’re a synesthete, it may have the color blue. But I never think of there being a big number 5 that takes something and repeats it 5 times. I think of a person taking something and doing it over 5 times.<br><br>-Kenny<br><br><blockquote type="cite">On Dec 18, 2015, at 10:25 AM, Cihat Gündüz via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br><br>Dear Swift-Community,<br><br>I’d like to propose an addition of a useful method, especially for beginners that also makes Swift much more readable in some situations: The addition of a .times method to Integer type(s).<br><br>For example recently in one of my projects I wanted to test the scalability of an important piece of code and wrote this method:<br><br>    func testPerfQualityInPercentWithoutQualityImprovements() {<br>        self.measureBlock {<br>            let expectedQuality = 33.33<br>            0.stride(to: 5_000, by: 1).forEach { _ in<br>                XCTAssertEqualWithAccuracy(self.crossword.qualityInPercent, expectedQuality, accuracy: 0.1)   <br>            }   <br>        }<br>    }<br><br>As you can see what I basically wanted was to repeat the test some thousand times. I also like to use the Ruby language and one thing I love about it is that it has some really handy methods integrated to the language in situations like this which make the code very readable and therefore fun to use.<br><br>I’m an even bigger fan of Swift so I’d love to see such useful methods appear in Swift, too and this is the first I came across that I really missed. So I’m asking myself, what if I could write the same code above like this:<br><br>    func testPerfQualityInPercentWithoutQualityImprovements() {<br>        self.measureBlock {<br>            let expectedQuality = 33.33<br>            5_000.times {<br>                XCTAssertEqualWithAccuracy(self.crossword.qualityInPercent, expectedQuality, accuracy: 0.1)   <br>            }   <br>        }<br>    }<br><br>I think it could be added to the Swift standard library very easily (for example by using the .stride method like I used) without any side effects and has enough advantages to be part of Swift itself. What do you think?<br><br>I wish you all the best,<br>Cihat<br><br><br>P.S.: This is my very first mail in such a mailing list so I did everything correctly. ^.^<br><br><br>_______________________________________________<br>swift-evolution mailing list<br><a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br><a href="https://lists.swift.org/mailman/listinfo/swift-evolution" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br></blockquote><br></div></div></blockquote></div><br></div>
<img src="https://u2002410.ct.sendgrid.net/wf/open?upn=aT-2FLnFEhPSFDSL7Gmx0xJo5o6hMhPoYO5Zn1SY30wfcNC2vl01U0aO21ZzB0A6xuYI7rMMlEB-2BY-2F9e9ErYMhUuh8FAHbNJBM7boxv83Cway8GD89REnbDxRWffRTsh-2BUjwulZtaXblX-2B7M1lk34fFSquoI-2BXnk8DfxRRPLsebriUC154eqoG5c6aumzQdwu8kmX7HtwaCEWrkEaHbWLSbV90wzr4ZAD44GRVUcTQidY-3D" alt="" width="1" height="1" border="0" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important">
</div>
_______________________________________________<br>swift-evolution mailing list<br><a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br><a href="https://lists.swift.org/mailman/listinfo/swift-evolution" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br></div></blockquote></div><br></div></div>
<img src="https://u2002410.ct.sendgrid.net/wf/open?upn=t5fkNsX-2F7-2FAygTFNPNE08PALgkjkO6I8wpsdssDS0ug3lgI7IeW-2FUKUmcZ2HYEs1rih6nbscJRHy4qT3WBKvHMWvcL2vdeBmmG0g4FEanaKQJnAsaVgQ7UZ-2FnaFjA-2B3iMDv-2Fyx3peY962wFfKsawyHJsOaJ-2F3hsrV4EntqlvKJzT-2Fbv-2BwAybzYrCaiI-2FCBl2qZ4iEWsu2-2FaZBY6Bht-2FoNtDlZRegWUGatAd67oQC9RI-3D" alt="" width="1" height="1" border="0" style="min-height:1px!important;width:1px!important;border-width:0!important;margin-top:0!important;margin-bottom:0!important;margin-right:0!important;margin-left:0!important;padding-top:0!important;padding-bottom:0!important;padding-right:0!important;padding-left:0!important">
</div>
_______________________________________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
</blockquote></div>