I’ve not been religious about it, though XoR 2 will have less of it. For non-programmers like me and others we’ve heard from upthread, it takes effort and time to use functions like gosub and multireplace–both in figuring out how to use them in the first place, and then in being able to read and check the code that results. There’s a real inefficiency there for anyone who doesn’t take naturally to computer code, manifesting in games that take longer to finish.
And ChoiceScript is meant to be a language for folks like us. That was the point, right? There were already plenty of ways for people with more programming nous and experience to write IF. The new thing about CS was that anyone could use it, even if they didn’t understand a scrap of the underlying software. I’d be really wary about pushing CS authors toward using things they don’t understand, and I think an insistence on gosubs does that. You can write a great game without any of those coding efficiencies–as witness Community College Hero, or Choice of the Dragon.
I use lots of gosubs, these days, but there are still some areas where I went with a stretch of repeat text with slight variances–for those who’ve read XoR or its code, I’m thinking particularly of the introduction to the Ledge of Bees scene in Chapter Four, which then feeds into a bees gosub. The intro pops up in around five slightly different versions around the chapter, with variation in different bits of the para depending on what brings you to the ledge.
While I’m sure I could have done the job with gosubs, it would have reduced the legibility of the code to me, making it harder for me to confirm that each intro made sense in its context. So I resorted to good old cut and paste where I could read the variation in whole-paragraph form.
Rather than trying to force authors to code as efficiently as possible, I’m sympathetic with MeltingPenguins’ solution of just applying a discount rate to the published word count estimate when a game is really inefficiently coded. I’d be happy for XoR to be advertised as a smaller word count game; it would still be huge.
That way lies “how much of the word count is really code anyway?” A lot more of the XoR wordcount sits in lines with an asterisk up front than in repeated words.