emlyn / tortilla

A thin Clojure wrapper for Java APIs providing efficient and idiomatic interop.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Compile time argument type inspection

emlyn opened this issue · comments

If instead of generating functions in defwrapper we generated macros, these could then inspect the arguments at compile time. If any arguments are literals (e.g. 1, "foo", nil...), or have type hints (e.g. ^long x, ^String (foo y)), this could be used to further restrict the set of matching methods at compile time, so that at run time there are fewer overloads to consider.