Skip to content

Version 0.10.0

Compare
Choose a tag to compare
@raehik raehik released this 14 Jul 11:14
· 202 commits to master since this release
  • Fix parsing kind parameters like a_1 on literals. Previously, that would
    be parsed as a kind parameter on a kind parameter. Now we don't do that,
    following gfortran's behaviour.
    • Kind parameter representation is changed to explicitly say if it's an
      integer kind or named constant kind, rather than reusing Expression.
  • BOZ literals
    • add some syntactic info (to enable checking standards conformance)
    • export bozAsTwosComp function for reading as two's complement integer
  • allow named constants in complex literals
  • document FirstParameter, SecondParameter behaviour/safety, fix erroneous
    instances
  • fiddle with record selectors for some AST nodes (for better Aeson instances)
  • pair IF/CASE conditions with their blocks, rather than splitting between two
    lists
  • ExpFunctionCall and StCall store procedure arguments in AList ([a])
    instead of Maybe AList (Maybe [a])
    • Matching is safer because empty lists are always [] instead of Nothing
      or Just []. Construction for empty lists is more awkward.
    • A better solution would be to use an AList-like that also stores extra
      syntactic information.
  • refactored a number of small AST nodes
    • ImpElement
    • ForallHeader
  • add Hackage documentation to many individual AST constructors and fields
  • improve include parser interface #227
  • improve newline handling for block parsers #228
  • fix some source span misses #225