
2 Aug
2004
2 Aug
'04
12:25 a.m.
alex:
eBay modifies 30k lines of code per week while maintaining 99.92% uptime.
Is there a way to force ghc (or some other Haskell implementation) to load new implementations of functions without restarting the program?
Alternatively, is there a way of restarting a program with new code without having to reconstruct all its in memory state?
You could consider using hs-plugins: http://www.cse.unsw.edu.au/~dons/hs-plugins/ the example at the bottom of http://www.cse.unsw.edu.au/~dons/hs-plugins/hs-plugins-Z-H-7.html#node_sec_6... shows how to load a new object into a running program, changing an already existing function on the fly. This uses GHC's dynamic linker underneath. -- Don