[swift-evolution] Proposal: Introduce User-defined "Dynamic Member Lookup" Types

C. Keith Ray keithray at mac.com
Mon Dec 4 23:24:26 CST 2017


Not everyone uses the IDE as a crutch for writing code. As someone who has used many languages, editors, and operating systems, I don't rely on autocomplete and sometimes turn it off because it gets in my way.

my experience with C# was sometimes frustrating because it could be hard to find the return type of a function, or the type of a "var" variable. Xcode's playgrounds, faster search, and "print(type(of:x))" provides a nicer experience.

(you should try Resharper and C# to see what refactoring support should look like.)

C. Keith Ray
https://leanpub.com/wepntk <- buy my book?
http://agilesolutionspace.blogspot.com/
twitter: @ckeithray
http://www.thirdfoundationsw.com/keith_ray_resume_2014_long.pdf

> On Dec 4, 2017, at 8:32 PM, Joe DeCapo <snoogansbc at gmail.com> wrote:
> 
>> On Dec 4, 2017, at 9:30 PM, Chris Lattner <clattner at nondot.org> wrote:
>> 
>> I personally am far more interested in getting to the bottom of Doug’s concerns - it isn’t clear to me what exactly his preferred direction actually is, but that discussion is based on engineering tradeoffs and may well lead to a change to the proposal or a complete change in direction.
>> 
>> -Chris
> 
> Some notes on one of Doug's points:
> 
>> * Indexing/jump-to-definition/lookup documentation/generated interface won’t ever work. None of the IDE features supported by SourceKit will work, which will be a significant regression for users coming from a Python-capable IDE.
> 
> Here's the state of the art in PyCharm in my personal Python project (no type hints, but full comprehensive doc comments):
> 
> <Screenshot 2017-12-04 22.11.22.png>
> 
> <Screenshot 2017-12-04 22.11.47.png>
> 
> <Screenshot 2017-12-04 22.12.05.png>
> 
> PyCharm is able to get the trivial cases right, but anything more complex than definitions and calls contained in a single file tend to end up looking something like that. I don't see any way that Swift could improve on that, and it's a foreign experience to anyone used to developing Swift code in Xcode.
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20171204/e5b9bc11/attachment.html>


More information about the swift-evolution mailing list