Fission , 958 + 752 = 1710 octets
._.
La gauche
D
z
^@$$$$$$$$$$$$$$$$$$$@!@$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$@!@~~~@!!@~~~@!@$$$$$@!@~~~~~@!@$$$$$$$$$$$$@!@~~~~~~~~@!@~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@!@$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$@!@~~~~@!@$$$@!@~@!@~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@!@~~~~~~~~~~~~~~~~~~~~~~~~~~~@!@$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$@!@~~~~@!@$$$$$$$$$@!@~~~~~~~~@!@$$$@!@~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@!@$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$@!@$$$$$@!@~~~~~~~~@!@$$$@!@~~~~~@!@~~@!@$$$$$@!@~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@!@~~~~~~~~~~~~~~~~~~~~~~~~~~~@!@$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$@!@$$$@!@~~~@!!@~~~@!@$$$$$$$@!@~@!@$@!@~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@!V
Essayez-le en ligne!
Droite
} \} \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \} \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \ } \
O________________________________________I'/O\/O\__u'/O\____i'/O\++p'/O\___/O\_i'/O\__u'/O\___/O\_____i'/O\++p'/O\+++/O\+/O\_______/O\_i'/O\_________________________________________I'/O\_u'/O\++p'/O\____/O\___/O\_i'/O\_u'/O\/O\____i'/O\++u'/O\__u'/O\_________________________________________I'/O\_/O\+/O\+++/O\____/O\___/O\_i'/O\++p'/O\___/O\_i'/O\_u'/O\____/O\____i'/O\+++++++P'L
Essayez-le en ligne!
OK, nous sommes ici avec de la chance, en fait ._.
La première fonctionnalité intéressante de Fission est qu'il dispose de 4 commandes pour créer des pointeurs de commande, des atomes AKA:, RLDU
j'ai donc deux commandes pour les groupes gauche et droit.
Le deuxième porte-bonheur porte sur 2 commandes de sortie !
et O
, qui se produisent dans différents groupes.
Troisième fois le charme. Les deux commandes de sortie produisent l'équivalent ASCII de la masse des atomes. Je dois donc le changer un peu. J'ai de la chance! Les deux + (+1 mass)
et _ (-1 mass)
sont dans un groupe et tous besoin de trois $ (+1 energy)
, ~ (-1 energy)
, @ (swap mass and energy)
sont dans un autre groupe.
Il existe également des miroirs pour contrôler les atomes dans les deux groupes! Mais je ne les ai pas utilisés dans le premier programme
Il n'y a donc rien pour m'arrêter, mais ce ne peut pas être compact, en définissant des masses pas à pas.
Premier programme
Le premier programme ne comprend que Dz^@$~!V
D create atom, going down
z set its mass to ASCII code of 'z'
^ split atom in 2, dividing their mass. One goes left, second - right
Le démarrage peut être plus simple (juste R
), mais l'utilisation de la division enregistre certains octets pour la première lettre.
Atom, qui va à gauche, s'enroule et rencontre V
, ce qui le fait descendre et enrouler indéfiniment, sans rien faire.
Le deuxième atome va droit et rencontrera un tas de motifs répétés @...@!
pour chaque lettre à produire.
@ swap atom's mass and energy
... increament or decrement energy until it would match desired ASCII code
@ swap again
! print character by atoms mass
Finalement, il rencontrera V
et partagera le sort du premier atome. Il n'y a aucun moyen de les détruire ou de s'arrêter avec la partie gauche du clavier.
Deuxième programme
Le deuxième vient avec ses hauts et ses bas. J'ai des commandes pour changer la masse directement, mais la commande de sortie O
détruit les atomes, donc je dois les préserver d'une manière ou d'une autre.
Le programme démarre à droite de l' L
atome à gauche.
Motif répété:
} \
/O\...X'
'
met le code ASCII du caractère suivant dans la masse des atomes, de sorte que le code de certains X
est stocké en premier, puis la masse est modifiée par _
et +
à la valeur exacte.
Parfois, il X'
est ignoré, s'il est plus court à utiliser juste _
et +
.
L'atome vient de la gauche, réfléchit deux fois et frappe }
de la gauche. Dans ce cas, }
fonctionne comme un cloneur, envoyant deux atomes identiques de haut en bas. L'atome descendant se réfléchit par le miroir et va à gauche. L'atome s'enroule, frappe le même miroir mais d'en bas et reflète donc à droite, rencontre O
et imprime.
À la fin, le dernier atome rencontre la finale O
pour être détruit.