News for hackers. Stuff that matters.
Re:Diminishing returns of static typing by gnaritas on Monday October 02, 2017 @11:50AM (#15384763)
I can do all of those things in Smalltalk, which is dynamically typed; these things are not byproducts of static typing, they're simply byproducts of mature tools. So no, these are not arguments in favor of static types.
Re:Diminishing returns of static typing by igouy on Monday October 02, 2017 @12:31PM (#15385255)
>> finding all references to a function <<

Yes, you can find all references to a method in Smalltalk -- but those references are not separated-out from all the references to other methods that happen to have the same method name but are defined on a different class.

With type information for the receiver and method arguments, we can find just the references we're looking for.

Re:Diminishing returns of static typing by gnaritas on Monday October 02, 2017 @04:32PM (#15387681)
Which is why Smalltalk's refactoring browser has a manual intervention step to allow you to see what it proposes to do, and remove any steps you don't agree with, as well as the ability to scope your refactorings to a package or class to limit the scope to more relevant data. Either way, it's sufficient to get 99% of the benefits of automated refactorings without the 100% guarantee static typing provides; good enough for me.

Automated refactoring was invented in Smalltalk, claiming it's a benefit only static typing provides is to not know history.

Re:Diminishing returns of static typing by igouy on Monday October 02, 2017 @04:46PM (#15387789)
> Automated refactoring was invented in Smalltalk, claiming it's a benefit only static typing provides is to not know history.

History: In Bill Opdyke's thesis work, the tooling was written for C++ and written in CLOS.

http://www.laputan.org/pub/papers/opdyke-thesis.pdf

Re:Diminishing returns of static typing by gnaritas on Monday October 02, 2017 @05:29PM (#15388119)
Ralph Johnson, a prominent Smalltalk'er, was advisor on that paper and was the creator of the first Smalltalk refactoring browser and that paper is littered with references to how things are done in Smalltalk. I was unaware a C++ was involved, but I still think Smalltalk had the first commercial refactoring browser. A research paper is not a product, however, thanks for the ref.
Re:Diminishing returns of static typing by igouy on Tuesday October 03, 2017 @10:34AM (#15392660)
Do you think having "the first commercial refactoring browser" is the same as "[a]utomated refactoring was invented in Smalltalk" ;-)

Incidentally, what's your source for "Ralph Johnson… was the creator of the first Smalltalk refactoring browser" ?

Re:Diminishing returns of static typing by gnaritas on Tuesday October 03, 2017 @10:48AM (#15392755)
Don't be a douche, obviously I don't think it's the same hence my comment. And I'm willing to bet, same as you, my source was Google to verify my memory of something I read long ago.
Re:Diminishing returns of static typing by igouy on Tuesday October 03, 2017 @04:39PM (#15395974)
If I'd read it as obvious I wouldn't have made that comment: your name-calling is unhelpful.

We still don't know if you simply confabulated your other claim.

Re:Diminishing returns of static typing by gnaritas on Tuesday October 03, 2017 @09:39PM (#15397679)
I didn't name call, saying don't be something isn't remotely the same as saying you are something. If someone tells you don't be a jerk, they're not calling you a jerk, they're warning you you're nearing that point. We're done, good will has exited the building, there's no point in continuing.
Re:Diminishing returns of static typing by KingMob on Monday October 02, 2017 @01:35PM (#15385948)
I can't speak to Smalltalk, but any namespaced Lisp system can figure out what references what. The key is that the searches happen through the REPL, not grep/ag. So if I tell CIDER to find all instances of a Clojure symbol, it can use the namespace to avoid false positives.
Re:Diminishing returns of static typing by igouy on Monday October 02, 2017 @04:48PM (#15387808)
Are you saying that reduces the number of false positives or are you saying that eliminates false positives?
Re:Diminishing returns of static typing by KingMob on Monday October 09, 2017 @02:12PM (#15436126)
Assuming there's no ambiguity, it can eliminate false positives.
Re:Diminishing returns of static typing by lispm on Monday October 02, 2017 @01:25PM (#15385844)
I can ask my Lisp IDE to find callers for methods based on the sub/class of arguments.
Re:Diminishing returns of static typing by igouy on Monday October 02, 2017 @01:41PM (#15386003)
Does it work better if you use type-specifiers in your code :-)