Distal Interphalangeal Joint
- This is still a work in progress. It may be changed in the future.
Please note: this language is not meant to offend or mock people with disabilities and was inspired by the author's long struggle with tendon and nerve damage
Distal Interphalangeal Joint, (also know as Distal Interphalangeal Joint 10 2), is a language designed by User:NoWhy. Distal Interphalangeal Joint is a subset and superset of the languages Distal Interphalangeal Joint F H, where F corresponds to the number of fingers possessed by the programmer and H corresponds to the number of hands possessed by the programmer.
The language does not require a licensed Distal Interphalangeal Joint input device, but it is strongly recommended for ergonomic reasons.
Instructions
The language uses two counters refered to as LC and RC.
Finger | Instruction |
---|---|
Leftmost ulnar
|
Set LC to duration of press. |
The Fourth Digit (Of The Left Side)
|
Set LC to (LC - RC) |
The Cathartic Finger (Left)
|
Set LC to (LC + RC) |
Digitus II (L)
|
Set LC to (LC * RC) |
Pollex Pointing To The Right
|
Output LC for duration of press. |
Pollex Pointing To The Left
|
Output RC for duration of press. |
Digitus II (R)
|
Set LC to (LC / RC) |
The Cathartic Finger (Right)
|
Swap LC and RC |
The Fourth Digit (Of The Right Side)
|
Set RC to (RC - LC) |
Rightmost ulnar
|
Set RC to duration of press. |
Chording
Chord keys to enter different modes. L1 is the left little finger, R1 is the right little finger etc.
Finger | Mode |
---|---|
L3 + R3
|
Tapping Mode |
L3 + L4
|
Programming Mode |
L4 + R4
|
Performance Mode |
Programming Mode
In Programming Mode the programmer will have to answer a series of questions before returning to default mode. The answers will be used to fill in the following if-unless statement:
if (a1 a2 a3) { a4 } unless a5
q1
tbd
q2
tbd
q3
tbd
q4
tbd
q5
Finger | a5 |
---|---|
L1
|
LC > totalNumberOfPresses |
L3
|
millis() > totalNumberOfPresses |
L5
|
Output Modes
In audio mode Distal Interphalangeal Joint can output MIDI notes (1-127) or pitches in the range of 250hz-8000hz (audiologists have determined pitches outside that range are useless to human beings and not worth considering.)
Symmetry
Regrettably Distal Interphalangeal Joint cannot be considered symmetric, but that does not mean no symmetric versions of Distal Interphalangeal Joint exist. The most common feature rich symmetrical Distal Interphalangeal Joint is an implementation of Distal Interphalangeal Joint 3 2 defined as follows.
Finger | Instruction |
---|---|
Leftmost finger 1
|
Set LC to duration of press. |
The Second Finger (Of The Left Side)
|
Set LC to (LC - RC) |
Pollex Pointing To The Right
|
Output LC for duration of press. |
Pollex Pointing To The Left
|
Output RC for duration of press. |
The Second Finger (Of The Right Side)
|
Set RC to (RC - LC) |
Rightmost finger 1
|
Set RC to duration of press. |
Distal Interphalangeal Joint 12 2 is the most desired form of Distal Interphalangeal Joint, omitting only the Swap command while mirroring each instruction for LC and RC.
Accessibility
Some programmers will only be able to harness Distal Interphalangeal Joint 1 1. For them we can define the following specifications.
Finger | Instruction |
---|---|
The Sole Finger
|
If Mode is set to Input: Set LC to duration of press. Set mode to Output
If Mode is set to Output: Output LC for duration of press. Set mode to Input |