External Publication
Visit Post

Empty list without list literals

Haskell Community [Unofficial] May 22, 2026
Source

This is my situation. I want to make this rule:

{-# RULES "++ 1 element" forall x xs. (x:[]) ++ xs = x:xs #-}

However, I have OverloadedLists enabled, so this becomes.

{-# RULES "++ 1 element" forall x xs. (x:(fromList [])) ++ xs = x:xs #-}

Is there a way to avoid this automatic fromList? Also, I’d like to be able to just say that a list is normal for readability.

Discussion in the ATmosphere

Loading comments...