packages feed

hermit-0.2.0.0: examples/qsort/QSort.hss

flatten-module
consider 'qsort
ww-split-param 1 [|wrap|] [|unwrap|]
bash
{consider lam ; alpha-lam 't}
any-call (unfold 'wrap)
any-call (unfold 'unwrap)
simplify
{rhs-of 'work
  alpha-lam 'xs
  lam-body
  any-td case-float-arg
  eta-expand 'acc
  bash
  one-td inline-case-binder -- this used to be part of bash
  bash
  lam-body
  {  case-alt 1
     any-td (push 'repH)
     consider alt
     alpha-alt ['bs,'cs]
     any-td (unfold-rule "repH ++")
     any-bu case-float-arg
     simplify
     one-td (foreward (ww-fusion [| absH t |] [| repH t |] [| work bs |]))
     one-td (foreward (ww-fusion [| absH t |] [| repH t |] [| work cs |]))
     any-call (unfold-rule "repH (:)")
     simplify
  }
  any-call (unfold-rule "repH []")
  any-call (unfold 'id)
}
one-td (unfold 'absH)