Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cover entire GHC AST #70

Closed
41 tasks done
mrkkrp opened this issue Jun 6, 2019 · 6 comments
Closed
41 tasks done

Cover entire GHC AST #70

mrkkrp opened this issue Jun 6, 2019 · 6 comments
Labels
covering-ghc-ast Issues about growing coverage of GHC AST to support all syntactical constructions in GHC Haskell.

Comments

@mrkkrp
Copy link
Member

mrkkrp commented Jun 6, 2019

This is the umbrella issue about covering various syntactic constructions in GHC AST. It should be closed when we cover everything.

  • HsModule Top level module thing
    • Module header and export list
    • Imports
    • Declarations
    • Deprecation messages
  • TyClD Type or class declaration
    • FamDecl Type family declaration
    • SynDecl Type declaration
    • DataDecl Data type declaration
    • ClassDecl Type class declaration
  • InstD Instance declaration
  • DerivD Deriving declaration
  • ValD Values (binds)
  • SigD Signature declaration
    • TypeSig Type signatures
    • PatSynSig Pattern-synonym signatures
    • ClassOpSig Signatures for class methods
    • FixSig Fixity declaration
    • InlineSig Inline pragmas
    • SpecSig Specialization pragmas
    • SpecInstSig A specialisation pragmas for instance declarations
    • MinimalSig Minimal complete definition pragmas
    • SCCFunSig A "set cost centre" pragmas for declarations
    • CompleteMatchSig A complete match pragma
  • DefD Default declaration
  • ForD Foreign declaration
    • ForeignImport
    • ForeignExport
  • WarningD Warning declaration
  • AnnD Annotation declaration
  • RuleD Rule declaration
  • SpliceD Splice declaration (Includes quasi-quotes)
  • RoleAnnotD Role annotation declaration

The overview is written according to ghc-8.6.4.

@mrkkrp
Copy link
Member Author

mrkkrp commented Jun 6, 2019

@ruhatch Here you go!

@mrkkrp mrkkrp added the covering-ghc-ast Issues about growing coverage of GHC AST to support all syntactical constructions in GHC Haskell. label Jun 6, 2019
@mrkkrp
Copy link
Member Author

mrkkrp commented Jun 6, 2019

I think I divided the work into issues not granularly enough and some bits still do not have corresponding issues. Perhaps I should create more issues now.

@ruhatch
Copy link
Collaborator

ruhatch commented Jun 14, 2019

I'm currently working on PatSynSig

ruhatch added a commit to ruhatch/ormolu that referenced this issue Jun 14, 2019
This is a simple addition, adding `pattern ` in front of normal type signature
formatting
mrkkrp pushed a commit that referenced this issue Jun 16, 2019
This is a simple addition, adding `pattern ` in front of normal type signature
formatting
@basile-henry
Copy link
Collaborator

I am working on the SpliceD bit! 😄

@ruhatch
Copy link
Collaborator

ruhatch commented Jun 20, 2019

Almost there :)

@mrkkrp
Copy link
Member Author

mrkkrp commented Jul 13, 2019

We have now complete coverage of GHC AST.

@mrkkrp mrkkrp closed this as completed Jul 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
covering-ghc-ast Issues about growing coverage of GHC AST to support all syntactical constructions in GHC Haskell.
Projects
None yet
Development

No branches or pull requests

3 participants