Skip to content

Improve frontend usability as a library

Kai Prott requested to merge lib-changes into master

I need a few additional functions exported and/or generalized. They are mostly concerned with starting the compilation or emitting status information.

This MR changes:

  • Bumps GHC and stack resolver to ghc-9.2. Some libraries shipped with GHC are also updated of course.
  • Fixes a few warnings. Mostly -Wincomplete-uni-patterns.
  • Accepts a few sensible hints from HLint
  • Derives Binary automatically via Generic to prevent incorrect instances
  • Adds a binary output target for typed flat curry, to reduce read/write efforts
  • Exports:
    • defaultCppOpts
    • parseOpts
    • processPragmas
    • adjustOptions
    • smake
    • compMessage
    • transModule
    • writeFlat
    • writInterface
    • dumpWith
  • generalizes the type of smake and compMessage and also adds another argument to compMessage to configure padding of messages.
  • Removes and adds whitespace to be consistent

The frontend still compiles both as a library and an executable But admittedly, I have not executed the tests yet.

Merge request reports