Erlang: elegir elementos únicos de una lista, usando recursión

Dada cualquier lista en Erlang, por ejemplo:

L = [foo, bar, foo, buzz, foo].

¿Cómo puedo mostrar solo los elementos únicos de esa lista, usando una función recursiva? No quiero usar una función incorporada, como una de las funciones de listas (si existe).

En mi ejemplo, a dónde quiero llegar sería una nueva lista, como

SL = [bar, buzz].

¿Mi conjetura es que primero ordenaré la lista, usando una función de clasificación rápida, antes de aplicar un filtro?

Cualquier sugerencia sería útil. El ejemplo es una variación de un ejercicio en el capítulo 3 del excelente libro "Programación Erlang" de Cesarini & Thompson.

Respuestas a la pregunta(8)

Su respuesta a la pregunta