Perl, 45 bayt
;print$_=<>,~~reverse;m;esrever~~,><=_$tnirp;
Oldukça basit, printbunun arkasındaki girdi ( $_=<>) reverse. reverseDöndürür $_çünkü skaler bağlamda önek ile kullanıyoruz ~~. Sonra ( bağlamlayıcı olarak m//kullanarak ;) geçersiz bağlamda komut dosyasının tersiyle eşleşiriz.
Eğer bir garanti verebilirsek, bir palindrom oluşturmak zorunda kalmayacağız esrever,><=_$tnirp, kodu 43 byte kısaltabiliriz :
g.print$_=<>,reverse.m.esrever,><=_$tnirp.g
kullanım
echo -n 'neverod' | perl -e 'g.print$_=<>,reverse.m.esrever,><=_$tnirp.g'
neveroddoreven
Perl, 26 bayt
İçin 25 bayt kodu + 1 içerir -p.
$_.=reverse;m;esrever=._$
Bunun geçerli olduğunu sanmıyorum çünkü -pgerçek bir palindrom oluşturmak için sanırım betiğin içeriğiyle kolayca birleştirilebileceğini sanmıyorum. Hemen hemen aynı çağrıları, dışında kapatmak için sahne arkasına (yeni Perls ...) -pde ekleyen gerçeğine dayanması dışında .;m//
kullanım
echo -n 'neverod' | perl -pe ';$_.=reverse;m;esrever=._$;'
neveroddoreven