GasKIT
GasKIT is the official dieseltech computer programming language utilized by machines built under the Data Engines Limited standard architecture. While not the only programming language present in the Manifold Sky setting, GasKIT is the most commonly used one by a wide margin.
Geographical Distribution
GasKIT programming gaskets can be found wherever dieseltech computers or systems of computers (i.e. autonets) running on Data Engines Limited architecture may be found.
Morphology
GasKIT programming gaskets use open pores to represent binary 1 inputs, while unblemished spaces (or closed micro-valves in rewritable formats) represent binary 0 outputs. Generalized GasKIT programming gaskets feature four columns, each eight 'bits' wide; the different widths of readers available on the market translate narrower gaskets into this format for the purpose of carrying out execution (i.e. halving the width of a gasket effectively doubles the length).
Whether a given set of eight bits is interpreted as a number, character, or instruction is somewhat arbitrary, being determined from the context of the surrounding bit sets.
Syntax
GasKIT instructions are generally executed linearly from the top of the programming gasket to the bottom, though REV commands can be employed to cause the machine to rewind a set number of lines for various purposes (i.e. loops). Each row of four eight bit sets is red from left to right.
Early dieseltech computers running on the DEL architecture were vulnerable to Ring0 attacks by virtue of the fact that other commands could be used to force the read-write jets to try to move out of their mechanical ranges. This vulnerability required early dieseltech programmers to be extremely careful with how they structured their code, as what gear grinders were doing on purpose could just as easily be accomplished on accident by an errant command. As of the year 10,000 AR, many safeguards have since been included in the architecture to prevent (or at least resist) this, though such an improper instruction could still lead to unintended code execution (i.e. an instruction being red twice).
Structural Markers
The first one to four rows of bits on a GasKIT program set various parameters of the machine reading it so that the code is executed properly. For example, such parameters might include whether the program is of a known length or it is a looped gasket of effectively infinite length.
It is considered good form among dieseltech computer programmers to annotate programming gaskets with printed numbers and letters to indicate what each bit represents (value, instruction, etc.) as well as to provide notes between lines and in margins to indicate what each bit of code is intended to do. While experienced programmers quickly come to interpret what each set of bits represents by sight alone, the tiny holes can be difficult to see under low-light conditions (or sleep deprivation), making these notes a matter of professional courtesy as well as one of utility.
Successor Languages
Comments