haskellfoundation / stability

Issues and proposals related to the HF Stability Working Group
25 stars 2 forks source link

Long term stability #18

Open anka-213 opened 10 months ago

anka-213 commented 10 months ago

If I want to write a Haskell program and have it compilable without changes 10 years from now, what would I need to do? What would be needed for that to be possible?

I'm guessing I would want some flags like -XHaskell98 or similar to explicitly tell the compiler what version of the haskell standard to use. Any other flags that would be helpful?

I would obviously want to minimize the number of external dependencies from hackage, since those frequently have breaking changes. Although setting a max version on them in the cabal file might be sufficient to solve that, assuming those older versions are still compilable. The larger issue is that boot-packages like base frequently have breaking changes and there is no way to use older versions of base with newer versions of the compiler. Is there some alternative base library available that is committed to long term stability?

noughtmare commented 10 months ago

Is there some alternative base library available that is committed to long term stability?

There is the haskell2010 library, but it doesn't compile any more due to (you guessed it) changes in base. Perhaps a library like that can be maintained fairly easily for a very long time.