Brent, thanks for answering.
Sorry, by "set" I meant "access" [the field "attributes"]. But you already answered, it depends on the ML module implementation choice.

One more question about elegance:
How to make Examples "sortable" by distance to a reference point "referenceEx"?

For instance, if referenceEx was not needed:
-----------------------------
listExs = [Example {att=[2,5,3]}, Example {att=[0,2,3]}, Example {att=[2,0,9]}]

sortedExamples =
     sort listExs
==================

With referenceEx, I tried this, but it is getting ugly:
------------------------------
sortedExamples =
       sort $ map (ExamplesPair referenceEx) listExs
================

------ML.hs------------------------------------------
data ExamplesPairClass =
      ExamplesPair {ex1 :: Example, ex2 :: Example} deriving (Show, Eq)

instance Ord ExamplesPairClass where
       (ExamplesPair ex1 referenceEx) ≤ (ExamplesPair ex2 referenceEx) =
       (ex1 distance referenceEx) ≤ (ex2 distance referenceEx)
==================================

Sorry that amount of code, it is terrible to read with no colorizing.


Davi