Perl, 45 байт
;print$_=<>,~~reverse;m;esrever~~,><=_$tnirp;
Досить простий, prints введення ( $_=<>), а за ним reverseйого вхід . reverseповертається, $_тому що ми використовуємо його у скалярному контексті шляхом префіксації до ~~. Тоді ми співставляємо ( m//використовуючи ;як роздільник), у недійсному контексті, проти зворотного сценарію.
Якщо ми можемо гарантувати, нам не доведеться створювати паліндром, esrever,><=_$tnirpми можемо скоротити код до 43 байт :
g.print$_=<>,reverse.m.esrever,><=_$tnirp.g
Використання
echo -n 'neverod' | perl -e 'g.print$_=<>,reverse.m.esrever,><=_$tnirp.g'
neveroddoreven
Perl, 26 байт
Включає 25 байт код + 1 для -p.
$_.=reverse;m;esrever=._$
Я не думаю, що це дійсно, оскільки для цього потрібен -pпрапор, який, на мою думку, не може бути легко поєднаний у вміст сценарію, щоб створити справжній паліндром. В основному ті ж дзвінки, що й вище, за винятком того, що він також покладається на те, що -pтакож додає ;за кадром (на нових Perls ...), щоб закрити m//.
Використання
echo -n 'neverod' | perl -pe ';$_.=reverse;m;esrever=._$;'
neveroddoreven