Monoid instances by primo

s//instance (Monoid a) => Monoid (a) where
    mempty = (mempty)
    (a1),(a2) = (a1,a2)

/;s/,/ `mappend` /g;s!(\PP*?)\K(?=\))!",${($1^o)&b}".$1=~s/\b$a(?=\d|$)/$b/gr!ge,print while$a=$b||=a,$b++^J

Note that non-ascii characters in the above source code will be escaped (such as \x9f).

download

return to the top page