8 ms·
Here is an attempt: .de Q .nf .na .pso awk 'BEGIN{bs=sprintf("%c",92); pre=bs"&"} {out=pre; for(i=1;i<=length($0);i++){c=substr($0,i,1); if(c==bs) out=
by nickdrozd 9mo ago
Here is an attempt:
.de Q
.nf
.na
.pso awk 'BEGIN{bs=sprintf("%c",92); pre=bs"&"} {out=pre; for(i=1;i<=length($0);i++){c=substr($0,i,1); if(c==bs) out=out bs bs; else out=out c} print out}' "\n[.F]"
.ex
..
.Q
Invoke with:
nroff -U -Tascii quine.roff | sed -Ez '$ s/\n+$//'
Possibly relies too much on awk + sed. So maybe not A+, but better than nothing.
- bediger4000 9mo agoTo be completely honest, I don't think that counts. Shelling out to awk means you're not writing nroff. It's possible to write quines in pure C or perl or m4 or python, without shelling out to another language.