I was happily coding away passing functions around and I was adding a function to a list when it appeared:
f# list does not support the 'equality' constraint because it is a function type
I was a bit puzzled by this. I was quite sure functions where regarded first class citizens in the realm of F#. In fact I had recently added another function to another list without any complaints.
I spent quite a bit of time trying to figure out what caused this. Try googling for answers with the words F#, function, and list in them, not an easy combination when dealing with a functional language. I tried creating simple test cases, but I could not seem to provoke the same error. At some point I started pondering less rational explanations like perhaps my list felt discriminated in some way, or was upset because it was starting to get late.