Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to create PHP extensions in Haskell?

Is it possible to create PHP extensions with Haskell?

Usually PHP extensions are written using C. Is using Haskell FFI to provide functionality for a stub C extension possible (or even a good idea)?

What are the caveats to such an approach? Does Zend perform some magic in the background that would disrupt such a scheme?

like image 914
Anupam Jain Avatar asked May 17 '11 12:05

Anupam Jain


2 Answers

You can certainly do this, though I'm not sure anyone has tried. Haskell interoperates with C via its FFI mechanism, and you can certainly:

  • Call Haskell from C

so if you can call C from PHP, and that C calls Haskell, you're in business.


Why would you want to do this? Faster, safer, simple code for your core algorithms or safety-critical code, perhaps. Or to take advantage of say, a parallel or multicore server backend via Haskell.

like image 187
Don Stewart Avatar answered Sep 19 '22 13:09

Don Stewart


Yes, its possible. Just make sure you wrap everything and translate arguments between php -> c -> haskell and the way back correctly.

like image 40
Dani Avatar answered Sep 17 '22 13:09

Dani