For color in a game I'm running, I want to make up a Vilani Programming Language (VPL). The players would interact with it more or less like we do today: a display and an input device. The code is read by looking at it. It's not beamed into our heads. It could be holographic, but it's still a visual interface.
So, I can hand them a piece of paper with "code" on it, and they could read it, and puzzle it out.
Because I'm a "regular modern" programmer, I think OO and structured programming as-is are somewhat pedestrian for "Far Future" code. I want to hide that in something less familiar. Even assembly language is too familiar.
And yet, I don't want to do a variant of COBOL. But I find its column-orientation interesting.
So, I was thinking, what would Column-Oriented Programming look like?
Consider a shell-like programming language: the commands are the same, or a thin API layer on top of, typed commands. Like sed, or awk, or indeed shell.
Now take that and impose column-significance: the column position is critically important. Maybe each column is assigned a fixed, permanent meaning. Maybe there are sets of meanings. Maybe it's completely flexible (probably not). For example, display position represents data flow: input commands are on the left, internal processing is in the center, and output commands are to the right.
The result looks vaguely like a tapestry, perhaps. Or a super-wide paper tape. Or maybe it looks like a chaotic jumble (that's fine, too). Maybe all of the above.
Anyone thought along those lines before? Just total blue-sky thinking.
So, I can hand them a piece of paper with "code" on it, and they could read it, and puzzle it out.
Because I'm a "regular modern" programmer, I think OO and structured programming as-is are somewhat pedestrian for "Far Future" code. I want to hide that in something less familiar. Even assembly language is too familiar.
And yet, I don't want to do a variant of COBOL. But I find its column-orientation interesting.
So, I was thinking, what would Column-Oriented Programming look like?
Consider a shell-like programming language: the commands are the same, or a thin API layer on top of, typed commands. Like sed, or awk, or indeed shell.
Now take that and impose column-significance: the column position is critically important. Maybe each column is assigned a fixed, permanent meaning. Maybe there are sets of meanings. Maybe it's completely flexible (probably not). For example, display position represents data flow: input commands are on the left, internal processing is in the center, and output commands are to the right.
The result looks vaguely like a tapestry, perhaps. Or a super-wide paper tape. Or maybe it looks like a chaotic jumble (that's fine, too). Maybe all of the above.
Anyone thought along those lines before? Just total blue-sky thinking.