I wrote the original implementation of the ICFP 2017 Bingo in Haskell using GHCJS and Reflex-DOM; however, the generated JavaScript weighed in at 2 MB, which is pretty bad considering how trivial this single-page webapp is.
My friend and ex-coworker Encsé mentioned I should give Idris a try, so I did. The resulting JavaScript is 150 kB, much better.
idrisjs
for interfacing with the DOMeffects
for random number generationcontrib
for ST as used byidrisjs