Right, actually I think a better heuristic would be: "warn on any function
invocation where the function being invoked is a local binding with a name
shadowing clojure.core". Whenever I use these names in local bindings,
they're practically never functions so invoking them is pretty much always
a b
On Jul 30, 2014, at 1:37 PM, Andy Fingerhut wrote:
> My first thought at a lint implementation was simply "warn if a let-bound
> name matches any Var name in clojure.core", although granted that could
> produce more false positives than you want.
Yeah, I'd just disable that globally for our cod
My first thought at a lint implementation was simply "warn if a let-bound
name matches any Var name in clojure.core", although granted that could
produce more false positives than you want.
The linter could be enabled by default, and experienced folks could disable
it completely.
Alternately, whe
Yeah, I do this all the time as well (in Cursive, I frequently have things
with names like 'symbol' and 'list' for example), but it does bite me when
I later refactor or copy some code around. I'm not sure what criteria I'd
want used for this warning - attempting to invoke a local binding that had
FWIW we have several places where the obvious local name shadows a core
function - so the existing behavior is both desirable (IMO) and in existing
production usage. I would not want to see that changed :)
Eastwood seems like the correct place for this (Eastwood has continued to
detect bugs in
This would be an appropriate kind of check for a lint tool like Eastwood to
make, and warn about. It currently does not do so, but I've created an
issue to remind me of the potential enhancement. [1]
It is up to the Clojure core team to decide whether they would like to make
such a change to the