Dato un input di un programma scritto in oOo CODE , emette il codice BF che rappresenta.
Ecco una breve descrizione di come funziona oOo CODE:
Innanzitutto, vengono rimossi tutti i caratteri non alfabetici (tutto ciò che non rientra nell'intervallo
A-Za-z
).Ad esempio, prendi il programma
PROgRam reVERsES giVeN iNPut sEqUENcE
(un esempio dato sulla pagina wiki di esolangs che fa esattamente quello che ti aspetteresti). Dopo questo primo passo, ora abbiamoPROgRamreVERsESgiVeNiNPutsEqUENcE
.Quindi, dividi tutti i personaggi rimanenti in gruppi di 3. Ora abbiamo
PRO,gRa,mre,VER,sES,giV,eNi,NPu,tsE,qUE,NcE
. Se esiste un gruppo finale di 1 o 2 caratteri, scartalo.Converti ogni gruppo di 3 lettere in un comando BF basato sulla seguente tabella:
ooo > ooO < oOo [ oOO ] Ooo - OoO + OOo . OOO ,
Cioè, se la prima lettera di un gruppo è in minuscolo, la seconda in maiuscolo e la terza in minuscolo, si tradurrebbe in comando
[
.Con il nostro esempio, questo diventa finalmente il programma BF
,[>,]<[.<]+
, che in effetti inverte il suo input.
Dato che si tratta di code-golf , vincerà il codice più breve in byte.
Casi test:
<empty string> -> <empty string>
A -> <empty string>
Ab -> <empty string>
Abc -> -
AbcD -> -
AbcDe -> -
AbcDef -> --
1A_b%c*D[]e\\\f! -> --
PROgRamreVERsESgiVeNiNPutsEqUENcE -> ,[>,]<[.<]+