[GHC] #8061: Support for Complex Double in Foreign Function Interface
GHC
ghc-devs at haskell.org
Tue Jul 16 10:09:26 CEST 2013
#8061: Support for Complex Double in Foreign Function Interface
-------------------------------------+------------------------------------
Reporter: dsamperi | Owner:
Type: feature request | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.6.3
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Difficulty: Unknown
Test Case: | Blocked By:
Blocking: | Related Tickets:
-------------------------------------+------------------------------------
Comment (by simonpj):
Sounds reasonable in principle. Someone would need to look into the FFI
interface, which would need to pass and return complex numbers, or perhaps
more generally structs. I don't have a clue what C's calling convention
looks like for that. I think we use `libffi` to generate code, but I'm
pretty hazy about the details.
Or maybe it'd be enough to return multiple ''results'', dually with
passing multiple arguments. So at the most primitive level you could say
{{{
foreign import foo :: Double# -> Double# -> IO (# Double#, Double# #)
}}}
If someone is up for doing the legwork, I'm sure there are people on `ghc-
devs` who can advise.
Simon
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8061#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list