[Bese-devel] UCW-CORE cleanup/separation-of-concerns patch vol. 1

Attila Lendvai attila.lendvai at gmail.com
Thu Mar 29 23:04:53 UTC 2007


> Um, aren't "traditional" UCW applications basically composed of
> defaction and defcomponent forms? I know that I use it a lot.

the strongest counter argument against defaction is that it's a simple
defmethod/cc, only with a different name. keeping track of when you
are leaving the call/cc boundary is important and for newcomers its
just a little harder with defmethod/cc hidden behind defaction.

iow, in my view defaction in today's ucw code only introduces a new
construct (to be learned, maintained, documented) without abstracting
away much. and at the same time its name clashes with a completly
different construct also called "action".

the implicit self argument is also a little confusing for newcomers
and questions always keep popping up about errors due to not being
aware of this.

i don't want to sound zealous about removing defaction, i don't really
care because i already know what's behind it... i just wanted to make
sure the con reasons are mentioned before i forget my newcomer days...
:)

-- 
- attila

"- The truth is that I've been too considerate, and so became
unintentionally cruel...
 - I understand.
 - No, you don't understand! We don't speak the same language!"
(Ingmar Bergman - Smultronstället)


More information about the bese-devel mailing list