Skip to content

Using strict language extension #412

Closed
@kazu-yamamoto

Description

@kazu-yamamoto

In my opinion, network programming in Haskell should use strict evaluation except atomicModifiyIORef', to avoid space leak. Strict and StrictData language extension are introduced in GHC 8.0 and it's days of GHC 8.6. So, it's good time to introduce them to network.

For this purpose, all undefined should be removed. It's very easy. But during this work, I experienced that undefined are evaluated even if they are removed from the source code. The reason is here: https://gitlab.haskell.org/ghc/ghc/issues/16810

When such inlinable functions are fixed in GHC 8.8, I would like to add the following to network.cabal:

  if impl(ghc >= 8.8)
      Default-Extensions:  Strict StrictData

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions