<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div><div style="direction: inherit;">I may be mistaken but I am not sure map is intended to make Optionals less painful to use as you kind of imply. People that use and love optionals and say that they are not a pain to use should not point at using/abusing the map function and the potential removal of it as masochism IMHO, but I am digressing sorry.</div><br>Sent from my iPhone</div><div><br>On 30 Aug 2016, at 08:44, Goffredo Marocchi <<a href="mailto:panajev@gmail.com">panajev@gmail.com</a>> wrote:<br><br></div><blockquote type="cite"><div><meta http-equiv="content-type" content="text/html; charset=utf-8"><div><div style="direction: inherit;"><br></div><br>Sent from my iPhone</div><div><br>On 30 Aug 2016, at 08:14, Charles Srstka <<a href="mailto:cocoadev@charlessoft.com">cocoadev@charlessoft.com</a>> wrote:<br><br></div><blockquote type="cite"><div><meta http-equiv="Content-Type" content="text/html charset=us-ascii"><blockquote type="cite" class="">On Aug 30, 2016, at 1:43 AM, Goffredo Marocchi via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> wrote:<br class=""></blockquote><div><blockquote type="cite" class=""><br class="Apple-interchange-newline"><div class=""><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">On 30 Aug 2016, at 05:00, Kevin Ballard via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> wrote:<br class=""><br class=""></div><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><div class=""><span class="">On Sun, Aug 28, 2016, at 01:28 PM, Dave Abrahams via swift-evolution wrote:</span><br class=""><blockquote type="cite" class=""><span class=""></span><br class=""></blockquote><blockquote type="cite" class=""><span class="">on Fri Aug 26 2016, Kevin Ballard <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> wrote:</span><br class=""></blockquote><blockquote type="cite" class=""><span class=""></span><br class=""></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">Goddammit. I completely missed this thread, because Pipermail</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">regularly decides not to deliver the swift-evolution-announce version</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">of review threads (which means they bypass my inbox). Why does it do</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">this? Most of the emails get delivered, but it just skips some of</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">them, and I keep ending up missing review threads because of it.</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class=""></span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">This change is going to have a HUGE impact for me. I use this sort of</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">comparison _all the time_ and find it incredibly useful, and have had</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">literally zero bugs caused by this. Surely I can't be the only one who</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">uses this. I am not looking forward to copying & pasting a</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">reimplementation of the comparison functions into every single project</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><blockquote type="cite" class=""><span class="">I work on.</span><br class=""></blockquote></blockquote><blockquote type="cite" class=""><span class=""></span><br class=""></blockquote><blockquote type="cite" class=""><span class="">It's very easy to write your own versions of these operators, should you</span><br class=""></blockquote><blockquote type="cite" class=""><span class="">choose to keep using them. From that standpoint, I don't see why the</span><br class=""></blockquote><blockquote type="cite" class=""><span class="">impact has to be huge.</span><br class=""></blockquote><span class=""></span><br class=""><span class="">You could make the same argument for a lot of stuff the stdlib provides. For example, let's remove Optional.map since it's trivial to reimplement.</span><br class=""><div style="direction: inherit;" class=""><br class=""></div></div></blockquote><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; direction: inherit;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; direction: inherit;" class="">I think a case for removing it may be how much Optional.map is used to work around any pains regarding using optionals.</div></div></blockquote></div><br class=""><div class="">Why? Are we masochists?</div></div></blockquote><div style="direction: inherit;"><br></div><div style="direction: inherit;">No, we want to be Swifty and do things properly with expressive syntax instead of reusing something not meant to work around the pain of using optionals ;).</div><div style="direction: inherit;"><br></div><div style="direction: inherit;">(Half joking - half serious... never had any problem with sending messages to nil in Objective-C, so I may be the weird one... just think that if you already strive for clarity and expressive intent using a .map to avoid extracting the optional value is a bit hacky and unclean)</div><div style="direction: inherit;"><br></div><blockquote type="cite"><div><div class=""><br class=""></div><div class="">Chsarles</div></div></blockquote></div></blockquote></body></html>