annotate demo/tcSum.ur @ 2195:18e6fb487880

Reduce: add reduction in some spots previously missed, associated with 'case' return types
author Adam Chlipala <adam@chlipala.net>
date Wed, 25 Nov 2015 18:48:17 -0500
parents 8d3aa6c7cee0
children
rev   line source
adamc@823 1 fun sum [t] (_ : num t) [fs ::: {Unit}] (fl : folder fs) (x : $(mapU t fs)) =
adamc@1093 2 @foldUR [t] [fn _ => t]
adamc@1093 3 (fn [nm :: Name] [rest :: {Unit}] [[nm] ~ rest] n acc => n + acc)
adamc@1093 4 zero fl x
adamc@417 5
adamc@417 6 fun main () = return <xml><body>
adamc@633 7 {[sum {A = 0, B = 1}]}<br/>
adamc@633 8 {[sum {C = 2.1, D = 3.2, E = 4.3}]}
adamc@417 9 </body></xml>