Interpret Developers
Developers is a joke language that parodies an incident at a Microsoft Developer's conference where Steve Ballmer is supposed to have chanted the word developers at least 14 times in a row. It is basically Brainfuck with a few extensions. It appeared briefly in the Wikipedia in the beginning of 2006, but it has not reappeared anywhere since its deletion. [source]
Your job today is to ressurect this beautiful language, and create an interpreter in the fewest number of bytes. You will have to implement the following commands, which contain their Brainfuck and C equivalents:
| Key | BF Equiv | C Equiv |
|----------------|----------|-----------------|
| "Developers" | + | ++*ptr; |
| "Developers"*2 | - | --*ptr; |
| "Developers"*3 | > | ++ptr; |
| "Developers"*4 | < | --ptr; |
| "Developers"*5 | , | *ptr=getchar(): |
| "Developers"*6 | . | putchar(*ptr); |
| "Developers"*7 | [ | while (*ptr) { |
| "Developers"*8 | ] | } |
As this is standard code-golf, the aim of the game is to create the shortest interpreter possible.
Bonus
If you would like to earn bonus points, you can also implement the following three extensions to the Developers language. These do not have a Brainfuck equivalent.
| Key | C Equiv |
|----------------|----------------------------------|
| "Developerz" | Sleep(strlen(buffer)*10); |
| "Developerz"*2 | system("cls");||system("clear"); |
| "Developerz"*3 | *p = rand() & 0xFF; |
If the goal of these is not clear:
Developerz
should sleep the program for 10ms for ever character in an input string
DeveloperzDeveloperz
should clear the screen.
DevelopersDeveloperzDeveloperz
should assign the currently pointed to cell to a random integer between 0 and 256.
For each command you implement, you may multiply your score by 0.75
. Thus, by implementing all three, your score would be 42.1875%
of the byte count.