[#] Пишем квайн-полиглот-палиндромы в честь дня программиста
habrabot(difrex,1) — All
2016-09-12 16:00:03


[![PalidromePolyglotQuine][1]][2]



Поздравляю всех трансляторов человеческого языка в машинный с их профессиональным днем, желаю вам меньше багов и больше-либо-равно классных идей! А в качестве идейного подарка со своей стороны предлагаю решение одной красивой задачи — написание кода, который на выходе выдаёт свой собственный текст, является валидным для интерпретаторов и компиляторов разных языков, и при этом правильно исполняется при реверсе исходников.



Не так давно я узнал о коде, который может одновременно интерпретироваться в PHP и компилироваться в Java: [PhpJava.java][3]. Как оказалось, эта идея не нова: код, валидный сразу для нескольких компиляторов или интерпретаторов, называется [полиглотом (polyglot)][4]. Такой код возможно писать из-за особенностей обработки строк и комментариев в различных интерпретаторах или компиляторах.

[Читать дальше →][5]

[1]: https://habrastorage.org/files/b0e/458/9ec/b0e4589ec6494616b28f63c65843d896.png
[2]: https://habrahabr.ru/post/309702/
[3]: https://gist.github.com/forairan/b1143f42883b3b0ee1237bc9bd0b7b2c
[4]: https://en.wikipedia.org/wiki/Polyglot_(computing)
[5]: https://habrahabr.ru/post/309702/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut