We recently discussed about Glamour. The example below illustrates well the "magic" effect that some of us (including my students) do not really adhere with DSL:
Something like this:
a list allowItemDrag: [:item :list | ... ]; itemDrag: [:item :list | ... ]
a list allowDropOnItem: [:draggedObject :targetItem :list | ... ]; dropOnItem: [:draggedObject :targetItem :list | ... ]
It is often not clear what the object referenced by "a" is. Even for me.
When I write scripts in Mondrian, I usually avoid having "each".
view nodes: Collection withAllSubclasses forEach: [ :aClass | ... ].
Instead of
view nodes: Collection withAllSubclasses forEach: [ :each | ... ].
Cheers, Alexandre