The Clojure(JVM) 1.12.0-alpha availability announcement (https://clojure.org/news/2024/05/23/clojure-1-12-alpha12) mentions the accommodation for Java functional interfaces. (Detailed here: https://clojure.atlassian.net/browse/CLJ-2799) Can anyone comment on similar situations that occur in ClojureCLR that we should be handling in a similar manner? Delegates?
I was working with ContinueWith on tasks, and needed to use the "sys-func" and "sys-task" macro's (mentioned at https://github.com/clojure/clojure-clr/wiki/Calling-generic-methods). (mostly to match the signature). Feels compatable. And for delegates CLR also has a macro / syntax, mostly needed to be able to match the generic type(s). So answer, yes, but in CLR the generic types need to match in these situations most of the time.
I love generic types. Except for having to accommodate them in ClojureCLR. One of my hopefully-not-so-long-term goals is to develop a typename syntax that looks more like what you see in C#/F# and that takes advantage of an imports that are in place. What is in place now exposes the underlying .NET syntax and forces one to do things such as fully qualify typenames and provide counts for generic arguments -- that was a quick fix more than a dozen years ago that I have yet to replace. Anyone wanting to talk about what that might look like -- go for it.