That 2012 post by Takano Akio mentioned using headStrict to implement scanl' as well, and a few other functions, which sounds like a fantastic idea, as long as it turns out to actually be safe.