Opened 7 years ago

Closed 6 years ago

#279 closed defect (fixed)

Rewrite rule type matcher doesn't handle type sums

Reported by: benl Owned by: amosrobinson
Priority: normal Milestone: 0.3.0
Component: Core Transforms Version: 0.2.1
Keywords: Cc:

Description

Unifying two arbitrary sums is probably too hard, but we could handle simple specific cases, like matching a single variable against a sum, or when the two sums share the same components.

Change History (3)

comment:1 Changed 7 years ago by benl

  • Owner set to amosrobinson

comment:2 Changed 6 years ago by amosrobinson

  • Status changed from new to assigned

I have started fixing this but found a separate issue with the insertion of weaken closures while writing a test. Will add test once I've fixed the weakclo issue.

comment:3 Changed 6 years ago by amosrobinson

  • Resolution set to fixed
  • Status changed from assigned to closed

Fixed. Simplified the matchT function too. It was originally keeping a stack of binders for the left-hand side and right-hand sides so it could check equivalence under foralls, but there are no foralls allowed in the rewrite rules.

test: test/ddc-main/30-Transform/40-Rewrite/T279-SumMatch/?

Note: See TracTickets for help on using tickets.