Create a gist now

Instantly share code, notes, and snippets.

@lukexi /NSObject+HSInit.m Secret
Last active Dec 21, 2015

What would you like to do?
#import <Foundation/Foundation.h>
extern void hs_init (int *argc, char **argv[]);
extern void hs_exit (void);
@interface NSObject (HSInit)
@end
@implementation NSObject (HSInit)
+ (void)load {
hs_init(NULL, NULL);
atexit(&hs_exit);
}
@end
@schell

This comment has been minimized.

Show comment Hide comment
@schell

schell Dec 16, 2013

What would the matching Haskell code look like? I'm not familiar with FFI.

schell commented Dec 16, 2013

What would the matching Haskell code look like? I'm not familiar with FFI.

@schell

This comment has been minimized.

Show comment Hide comment
@schell

schell Dec 16, 2013

Nvm! I played with it and figured it out! Thanks for your work!

Just so others know - hs_init and hs_exit are already defined for you somewhere and they init and tear down the RTS, respectively.

This link helped me figure things out http://www.haskell.org/haskellwiki/Calling_Haskell_from_C.

schell commented Dec 16, 2013

Nvm! I played with it and figured it out! Thanks for your work!

Just so others know - hs_init and hs_exit are already defined for you somewhere and they init and tear down the RTS, respectively.

This link helped me figure things out http://www.haskell.org/haskellwiki/Calling_Haskell_from_C.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment