Во-1, компилятор умеет распарсить текст шейдеров на GLSL и проверить согласованность используемых типов между шейдерами и основной программой. Во-2, сама библиотека более высокоуровневая и удобная, чем то, что я видел в примерах на WebGL на js, где тупо скопирован Си с указателями и становая тяга на каждый чих. В elm эта дьявольщина запрятана под капотом
Сама библиотека да, но если напишешь хрень в GLSL то только в рантайме узнаешь что что-то не так.