There is a proposal afoot for a new style of describing the functionality of bodies of code in a capability system. I am intermittently enthusiastic about this new style.

I don’t have a name I like for this style yet; I will use “NewSpeak” for now. I have been intermittently and inconsistently using NewSpeak, without quite realizing it. I realized this inconsistency as ideas came together in the cap-talk email list and this particular message launched this missive.

I think there is agreement, at least among those to whom this is addressed, that the capability paradigm is the best way to assemble many pieces of code into useful wholes. The issue at hand is a style of English description that helps reason about the behavior of the whole without having to think of all the parts at once. I advocate it here yet I am not sure it is practical. A closely parallel formal system is possible here but here I will stick to plain English.

Many readers of cap-talk will think that this quibbling is unimportant as it is already clear what the space bank does. It seems to me that our style of thinking transcends our style of speaking because we mostly understand each others systems, even though we use sloppy and often contradictory statements to describe them. Charlie Landau suggests that “object” can not be given a precise definition. David replies that “There’s no obstacle to formality here.”. I think I agree, but we still have not found a form of plain English with which to explain ourselves. I have gone down several dead ends when I thought I knew what was keeping general programmers from understanding capabilities. Maybe this is just another dead end.