I have made little progress over the last few days, and I have figured out why: I have insufficient confidence in my ability to utilize Sappho scripts – in particular the Blend function – effectively.
This is easy enough to understand; the Blend function (documented here) is a very subtle and powerful function that can handle all sorts of tasks. It’s easy enough to understand when the third argument (the balancing argument) is constant; then it acts as a simple scaling function. But once that third argument has a variable in it, things get tricky.
So when I work on scripts, I make many mistakes. Moreover, I realize now a fundamental flaw in SWAT: it’s difficult to reconcile many different elements. It’s not like conventional OO design, in which the modularity of the components makes it easy to build large structures. With SWAT, you need to reconcile many scripts scattered throughout the verb web, and that’s not easily done. I know that I should use the linking feature to ease this task, but it’s hard to know in advance when a script should be exactly the same across different situations.
So I’m feeling rather cowed by these obstacles, and am now hesitant to proceed. I know what I have to do: just plunge in and build up some experience with the Blend function; eventually I’ll have it down pat. But right now it is certainly intimidating.