New Issue: Should Chapel support FCFs implemented as function pointers? If so, how?

18442, "bradcray", "Should Chapel support FCFs implemented as function pointers? If so, how?", "2021-09-21T22:38:24Z"

In discussions about first-class functions (FCFs) and closures, we sometimes talk about
there being two weights, where both weights tend to involve an object (class or record)
of some kind. I often find myself wondering whether we could/should support a
simple C-style function pointer variant as well because many of the cases where
I think of wanting to use a FCF seem as though that's all would be needed (i.e.,
"couldn't we have this fairly easily today?"). And in C interop scenarios, they can
obviously be useful (to pass out to C; or even receive from C?).

If we were to support such function-pointer style FCFs in Chapel, is this something
that would be visible to the user in the syntax of the language, or would it be more
like an optimization to the more general FCF support that we have?

I'm opening this issue to see whether people tell me "we really don't need that because..."
or "yes, we should have this and I always assumed we would" or whatever, and to serve
as a place for collecting those thoughts (because I worry I bring it up redundantly all
the time in 1:1 conversations and the like).