2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
|
|
@ -1,5 +1,6 @@
|
|||
A [[wp:Quine_%28computing%29|Quine]] is a self-referential program that can,
|
||||
without any external access, output its own source.
|
||||
|
||||
It is named after the [[wp:Willard_Van_Orman_Quine|philosopher and logician]]
|
||||
who studied self-reference and quoting in natural language,
|
||||
as for example in the paradox "'Yields falsehood when preceded by its quotation' yields falsehood when preceded by its quotation."
|
||||
|
|
@ -9,6 +10,8 @@ For languages in which program source is represented as a data structure, "sourc
|
|||
|
||||
The usual way to code a Quine works similarly to this paradox: The program consists of two identical parts, once as plain code and once ''quoted'' in some way (for example, as a character string, or a literal data structure). The plain code then accesses the quoted code and prints it out twice, once unquoted and once with the proper quotation marks added. Often, the plain code and the quoted code have to be nested.
|
||||
|
||||
|
||||
;Task:
|
||||
Write a program that outputs its own source code in this way. If the language allows it, you may add a variant that accesses the code directly. You are not allowed to read any external files with the source code. The program should also contain some sort of self-reference, so constant expressions which return their own value which some top-level interpreter will print out. Empty programs producing no output are not allowed.
|
||||
|
||||
There are several difficulties that one runs into when writing a quine, mostly dealing with quoting:
|
||||
|
|
@ -20,4 +23,6 @@ There are several difficulties that one runs into when writing a quine, mostly d
|
|||
** Some languages allow you to have a string literal that spans multiple lines, which embeds the newlines into the string without escaping.
|
||||
** Write the entire program on one line, for free-form languages (as you can see for some of the solutions here, they run off the edge of the screen), thus removing the need for newlines. However, this may be unacceptable as some languages require a newline at the end of the file; and otherwise it is still generally good style to have a newline at the end of a file. (The task is not clear on whether a newline is required at the end of the file.) Some languages have a print statement that appends a newline; which solves the newline-at-the-end issue; but others do not.
|
||||
|
||||
<br>
|
||||
'''Next to the Quines presented here, many other versions can be found on the [http://www.nyx.net/~gthompso/quine.htm Quine] page.'''
|
||||
<br><br>
|
||||
|
|
|
|||
6
Task/Quine/Babel/quine-1.pb
Normal file
6
Task/Quine/Babel/quine-1.pb
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
% bin/babel quine.sp
|
||||
{ "{ '{ ' << dup [val 0x22 0xffffff00 ] dup <- << << -> << ' ' << << ' }' << } !" { '{ ' << dup [val 0x22 0xffffff00 ] dup <- << << -> << ' ' << << '}' << } ! }%
|
||||
%
|
||||
% cat quine.sp
|
||||
{ "{ '{ ' << dup [val 0x22 0xffffff00 ] dup <- << << -> << ' ' << << ' }' << } !" { '{ ' << dup [val 0x22 0xffffff00 ] dup <- << << -> << ' ' << << '}' << } ! }%
|
||||
%
|
||||
6
Task/Quine/Babel/quine-2.pb
Normal file
6
Task/Quine/Babel/quine-2.pb
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
% bin/babel
|
||||
babel> { "{ '{ ' << dup [val 0x22 0xffffff00 ] dup <- << << -> << ' ' << << ' }' << } !" { '{ ' << dup [val 0x22 0xffffff00 ] dup <- << << -> << ' ' << << '}' << } ! }
|
||||
babel> eval
|
||||
{ "{ '{ ' << dup [val 0x22 0xffffff00 ] dup <- << << -> << ' ' << << ' }' << } !" { '{ ' << dup [val 0x22 0xffffff00 ] dup <- << << -> << ' ' << << '
|
||||
}' << } !}babel>
|
||||
babel>
|
||||
2
Task/Quine/C/quine-2.c
Normal file
2
Task/Quine/C/quine-2.c
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
#include <stdio.h>
|
||||
int main(){char*c="#include <stdio.h>%cint main(){char*c=%c%s%c;printf(c,10,34,c,34,10);return 0;}%c";printf(c,10,34,c,34,10);return 0;}
|
||||
|
|
@ -1,339 +1 @@
|
|||
IDENTIFICATION DIVISION.
|
||||
PROGRAM-ID. GRICE.
|
||||
ENVIRONMENT DIVISION.
|
||||
CONFIGURATION SECTION.
|
||||
SPECIAL-NAMES.
|
||||
SYMBOLIC CHARACTERS FULL-STOP IS 76.
|
||||
INPUT-OUTPUT SECTION.
|
||||
FILE-CONTROL.
|
||||
SELECT OUTPUT-FILE ASSIGN TO OUTPUT1.
|
||||
DATA DIVISION.
|
||||
FILE SECTION.
|
||||
FD OUTPUT-FILE
|
||||
RECORDING MODE F
|
||||
LABEL RECORDS OMITTED.
|
||||
01 OUTPUT-RECORD PIC X(80).
|
||||
WORKING-STORAGE SECTION.
|
||||
01 SUB-X PIC S9(4) COMP.
|
||||
01 SOURCE-FACSIMILE-AREA.
|
||||
02 SOURCE-FACSIMILE-DATA.
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IDENTIFICATION DIVISION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PROGRAM-ID. GRICE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ENVIRONMENT DIVISION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" CONFIGURATION SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" SPECIAL-NAMES. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" SYMBOLIC CHARACTERS FULL-STOP".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IS 76. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" INPUT-OUTPUT SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" FILE-CONTROL. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" SELECT OUTPUT-FILE ASSIGN TO ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"OUTPUT1. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" DATA DIVISION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" FILE SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" FD OUTPUT-FILE ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" RECORDING MODE F ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" LABEL RECORDS OMITTED. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 01 OUTPUT-RECORD ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(80). ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WORKING-STORAGE SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 01 SUB-X ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC S9(4) COMP. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 01 SOURCE-FACSIMILE-AREA. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 SOURCE-FACSIMILE-DATA. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 03 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(40) VALUE ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 SOURCE-FACSIMILE-TABLE RE".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"DEFINES ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" SOURCE-FACSIMILE-DATA".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
". ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 03 SOURCE-FACSIMILE OCCU".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"RS 68. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 04 SOURCE-FACSIMILE-".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"ONE PIC X(40). ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 04 SOURCE-FACSIMILE-".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"TWO PIC X(40). ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 01 FILLER-IMAGE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(15) VALUE SPACES. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X VALUE QUOTE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER-DATA ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(40). ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X VALUE QUOTE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X VALUE FULL-STOP. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(22) VALUE SPACES. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PROCEDURE DIVISION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MAIN-LINE SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-1. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" OPEN OUTPUT OUTPUT-FILE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE 1 TO SUB-X. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-2. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE (SUB-X)".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" TO OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IF SUB-X < 19 ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ADD 1 TO SUB-X ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" GO TO ML-2. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE 1 TO SUB-X. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-3. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE (20) TO".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE-ONE (SU".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"B-X) TO FILLER-DATA. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE FILLER-IMAGE TO OUTPUT-R".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"ECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE (20) TO".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE-TWO (SU".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"B-X) TO FILLER-DATA. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE FILLER-IMAGE TO OUTPUT-R".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"ECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IF SUB-X < 68 ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ADD 1 TO SUB-X ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" GO TO ML-3. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE 21 TO SUB-X. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-4. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE (SUB-X)".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" TO OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IF SUB-X < 68 ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ADD 1 TO SUB-X ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" GO TO ML-4. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-99. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
lang Ada>with Ada.Text_IO;procedure Self is Q:Character:='"';A:String:="with Ada.Text_IO;procedure Self is Q:Character:=' 03 FILLER PIC X(40) VALUE
|
||||
" CLOSE OUTPUT-FILE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" STOP RUN. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
02 SOURCE-FACSIMILE-TABLE REDEFINES
|
||||
SOURCE-FACSIMILE-DATA.
|
||||
03 SOURCE-FACSIMILE OCCURS 68.
|
||||
04 SOURCE-FACSIMILE-ONE PIC X(40).
|
||||
04 SOURCE-FACSIMILE-TWO PIC X(40).
|
||||
01 FILLER-IMAGE.
|
||||
02 FILLER PIC X(15) VALUE SPACES.
|
||||
02 FILLER PIC X VALUE QUOTE.
|
||||
02 FILLER-DATA PIC X(40).
|
||||
02 FILLER PIC X VALUE QUOTE.
|
||||
02 FILLER PIC X VALUE FULL-STOP.
|
||||
02 FILLER PIC X(22) VALUE SPACES.
|
||||
PROCEDURE DIVISION.
|
||||
MAIN-LINE SECTION.
|
||||
ML-1.
|
||||
OPEN OUTPUT OUTPUT-FILE.
|
||||
MOVE 1 TO SUB-X.
|
||||
ML-2.
|
||||
MOVE SOURCE-FACSIMILE (SUB-X) TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
IF SUB-X < 19
|
||||
ADD 1 TO SUB-X
|
||||
GO TO ML-2.
|
||||
MOVE 1 TO SUB-X.
|
||||
ML-3.
|
||||
MOVE SOURCE-FACSIMILE (20) TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
MOVE SOURCE-FACSIMILE-ONE (SUB-X) TO FILLER-DATA.
|
||||
MOVE FILLER-IMAGE TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
MOVE SOURCE-FACSIMILE (20) TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
MOVE SOURCE-FACSIMILE-TWO (SUB-X) TO FILLER-DATA.
|
||||
MOVE FILLER-IMAGE TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
IF SUB-X < 68
|
||||
ADD 1 TO SUB-X
|
||||
GO TO ML-3.
|
||||
MOVE 21 TO SUB-X.
|
||||
ML-4.
|
||||
MOVE SOURCE-FACSIMILE (SUB-X) TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
IF SUB-X < 68
|
||||
ADD 1 TO SUB-X
|
||||
GO TO ML-4.
|
||||
ML-99.
|
||||
CLOSE OUTPUT-FILE.
|
||||
STOP RUN.
|
||||
linkage section. 78 c value "display 'linkage section. 78 c value ' x'22' c x'222e20' c.". display 'linkage section. 78 c value ' x'22' c x'222e20' c.
|
||||
|
|
|
|||
|
|
@ -1,48 +1,339 @@
|
|||
ID DIVISION.
|
||||
PROGRAM-ID. QUINE.
|
||||
IDENTIFICATION DIVISION.
|
||||
PROGRAM-ID. GRICE.
|
||||
ENVIRONMENT DIVISION.
|
||||
CONFIGURATION SECTION.
|
||||
SPECIAL-NAMES.
|
||||
SYMBOLIC CHARACTERS FULL-STOP IS 76.
|
||||
INPUT-OUTPUT SECTION.
|
||||
FILE-CONTROL.
|
||||
SELECT OUTPUT-FILE ASSIGN TO OUTPUT1.
|
||||
DATA DIVISION.
|
||||
FILE SECTION.
|
||||
FD OUTPUT-FILE
|
||||
RECORDING MODE F
|
||||
LABEL RECORDS OMITTED.
|
||||
01 OUTPUT-RECORD PIC X(80).
|
||||
WORKING-STORAGE SECTION.
|
||||
1 X PIC S9(4) COMP.
|
||||
1 A. 2 B.
|
||||
3 PIC X(40) VALUE " ID DIVISION. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " PROGRAM-ID. QUINE. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " DATA DIVISION. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " WORKING-STORAGE SECTION. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " 1 X PIC S9(4) COMP. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " 1 A. 2 B. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " 2 T REDEFINES B. 3 TE OCCURS 16. ".
|
||||
3 PIC X(40) VALUE "4 T1 PIC X(40). 4 T2 PIC X(40). ".
|
||||
3 PIC X(40) VALUE " 1 F. 2 PIC X(25) VALUE ".
|
||||
3 PIC X(40) VALUE "' 3 PIC X(40) VALUE '. ".
|
||||
3 PIC X(40) VALUE " 2 PIC X VALUE QUOTE. 2 FF PIC X(4".
|
||||
3 PIC X(40) VALUE "0). 2 PIC X VALUE QUOTE. ".
|
||||
3 PIC X(40) VALUE " 2 PIC X VALUE '.'. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " PROCEDURE DIVISION. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " PERFORM VARYING X FROM 1 BY 1".
|
||||
3 PIC X(40) VALUE " UNTIL X > 6 DISPLAY TE (X) ".
|
||||
3 PIC X(40) VALUE " END-PERFORM PERFORM VARYING X".
|
||||
3 PIC X(40) VALUE " FROM 1 BY 1 UNTIL X > 16 ".
|
||||
3 PIC X(40) VALUE " MOVE T1 (X) TO FF DISPLAY F M".
|
||||
3 PIC X(40) VALUE "OVE T2 (X) TO FF DISPLAY F ".
|
||||
3 PIC X(40) VALUE " END-PERFORM PERFORM VARYING X".
|
||||
3 PIC X(40) VALUE " FROM 7 BY 1 UNTIL X > 16 ".
|
||||
3 PIC X(40) VALUE " DISPLAY TE (X) END-PERFORM ST".
|
||||
3 PIC X(40) VALUE "OP RUN. ".
|
||||
2 T REDEFINES B. 3 TE OCCURS 16. 4 T1 PIC X(40). 4 T2 PIC X(40).
|
||||
1 F. 2 PIC X(25) VALUE ' 3 PIC X(40) VALUE '.
|
||||
2 PIC X VALUE QUOTE. 2 FF PIC X(40). 2 PIC X VALUE QUOTE.
|
||||
2 PIC X VALUE '.'.
|
||||
01 SUB-X PIC S9(4) COMP.
|
||||
01 SOURCE-FACSIMILE-AREA.
|
||||
02 SOURCE-FACSIMILE-DATA.
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IDENTIFICATION DIVISION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PROGRAM-ID. GRICE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ENVIRONMENT DIVISION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" CONFIGURATION SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" SPECIAL-NAMES. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" SYMBOLIC CHARACTERS FULL-STOP".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IS 76. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" INPUT-OUTPUT SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" FILE-CONTROL. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" SELECT OUTPUT-FILE ASSIGN TO ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"OUTPUT1. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" DATA DIVISION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" FILE SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" FD OUTPUT-FILE ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" RECORDING MODE F ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" LABEL RECORDS OMITTED. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 01 OUTPUT-RECORD ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(80). ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WORKING-STORAGE SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 01 SUB-X ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC S9(4) COMP. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 01 SOURCE-FACSIMILE-AREA. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 SOURCE-FACSIMILE-DATA. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 03 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(40) VALUE ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 SOURCE-FACSIMILE-TABLE RE".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"DEFINES ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" SOURCE-FACSIMILE-DATA".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
". ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 03 SOURCE-FACSIMILE OCCU".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"RS 68. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 04 SOURCE-FACSIMILE-".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"ONE PIC X(40). ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 04 SOURCE-FACSIMILE-".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"TWO PIC X(40). ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 01 FILLER-IMAGE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(15) VALUE SPACES. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X VALUE QUOTE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER-DATA ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(40). ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X VALUE QUOTE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X VALUE FULL-STOP. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" 02 FILLER ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PIC X(22) VALUE SPACES. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" PROCEDURE DIVISION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MAIN-LINE SECTION. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-1. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" OPEN OUTPUT OUTPUT-FILE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE 1 TO SUB-X. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-2. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE (SUB-X)".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" TO OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IF SUB-X < 19 ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ADD 1 TO SUB-X ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" GO TO ML-2. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE 1 TO SUB-X. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-3. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE (20) TO".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE-ONE (SU".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"B-X) TO FILLER-DATA. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE FILLER-IMAGE TO OUTPUT-R".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"ECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE (20) TO".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE-TWO (SU".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"B-X) TO FILLER-DATA. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE FILLER-IMAGE TO OUTPUT-R".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
"ECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IF SUB-X < 68 ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ADD 1 TO SUB-X ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" GO TO ML-3. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE 21 TO SUB-X. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-4. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" MOVE SOURCE-FACSIMILE (SUB-X)".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" TO OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" WRITE OUTPUT-RECORD. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" IF SUB-X < 68 ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ADD 1 TO SUB-X ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" GO TO ML-4. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ML-99. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" CLOSE OUTPUT-FILE. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" STOP RUN. ".
|
||||
03 FILLER PIC X(40) VALUE
|
||||
" ".
|
||||
02 SOURCE-FACSIMILE-TABLE REDEFINES
|
||||
SOURCE-FACSIMILE-DATA.
|
||||
03 SOURCE-FACSIMILE OCCURS 68.
|
||||
04 SOURCE-FACSIMILE-ONE PIC X(40).
|
||||
04 SOURCE-FACSIMILE-TWO PIC X(40).
|
||||
01 FILLER-IMAGE.
|
||||
02 FILLER PIC X(15) VALUE SPACES.
|
||||
02 FILLER PIC X VALUE QUOTE.
|
||||
02 FILLER-DATA PIC X(40).
|
||||
02 FILLER PIC X VALUE QUOTE.
|
||||
02 FILLER PIC X VALUE FULL-STOP.
|
||||
02 FILLER PIC X(22) VALUE SPACES.
|
||||
PROCEDURE DIVISION.
|
||||
PERFORM VARYING X FROM 1 BY 1 UNTIL X > 6 DISPLAY TE (X)
|
||||
END-PERFORM PERFORM VARYING X FROM 1 BY 1 UNTIL X > 16
|
||||
MOVE T1 (X) TO FF DISPLAY F MOVE T2 (X) TO FF DISPLAY F
|
||||
END-PERFORM PERFORM VARYING X FROM 7 BY 1 UNTIL X > 16
|
||||
DISPLAY TE (X) END-PERFORM STOP RUN.
|
||||
MAIN-LINE SECTION.
|
||||
ML-1.
|
||||
OPEN OUTPUT OUTPUT-FILE.
|
||||
MOVE 1 TO SUB-X.
|
||||
ML-2.
|
||||
MOVE SOURCE-FACSIMILE (SUB-X) TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
IF SUB-X < 19
|
||||
ADD 1 TO SUB-X
|
||||
GO TO ML-2.
|
||||
MOVE 1 TO SUB-X.
|
||||
ML-3.
|
||||
MOVE SOURCE-FACSIMILE (20) TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
MOVE SOURCE-FACSIMILE-ONE (SUB-X) TO FILLER-DATA.
|
||||
MOVE FILLER-IMAGE TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
MOVE SOURCE-FACSIMILE (20) TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
MOVE SOURCE-FACSIMILE-TWO (SUB-X) TO FILLER-DATA.
|
||||
MOVE FILLER-IMAGE TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
IF SUB-X < 68
|
||||
ADD 1 TO SUB-X
|
||||
GO TO ML-3.
|
||||
MOVE 21 TO SUB-X.
|
||||
ML-4.
|
||||
MOVE SOURCE-FACSIMILE (SUB-X) TO OUTPUT-RECORD.
|
||||
WRITE OUTPUT-RECORD.
|
||||
IF SUB-X < 68
|
||||
ADD 1 TO SUB-X
|
||||
GO TO ML-4.
|
||||
ML-99.
|
||||
CLOSE OUTPUT-FILE.
|
||||
STOP RUN.
|
||||
|
|
|
|||
48
Task/Quine/COBOL/quine-3.cobol
Normal file
48
Task/Quine/COBOL/quine-3.cobol
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
ID DIVISION.
|
||||
PROGRAM-ID. QUINE.
|
||||
DATA DIVISION.
|
||||
WORKING-STORAGE SECTION.
|
||||
1 X PIC S9(4) COMP.
|
||||
1 A. 2 B.
|
||||
3 PIC X(40) VALUE " ID DIVISION. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " PROGRAM-ID. QUINE. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " DATA DIVISION. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " WORKING-STORAGE SECTION. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " 1 X PIC S9(4) COMP. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " 1 A. 2 B. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " 2 T REDEFINES B. 3 TE OCCURS 16. ".
|
||||
3 PIC X(40) VALUE "4 T1 PIC X(40). 4 T2 PIC X(40). ".
|
||||
3 PIC X(40) VALUE " 1 F. 2 PIC X(25) VALUE ".
|
||||
3 PIC X(40) VALUE "' 3 PIC X(40) VALUE '. ".
|
||||
3 PIC X(40) VALUE " 2 PIC X VALUE QUOTE. 2 FF PIC X(4".
|
||||
3 PIC X(40) VALUE "0). 2 PIC X VALUE QUOTE. ".
|
||||
3 PIC X(40) VALUE " 2 PIC X VALUE '.'. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " PROCEDURE DIVISION. ".
|
||||
3 PIC X(40) VALUE " ".
|
||||
3 PIC X(40) VALUE " PERFORM VARYING X FROM 1 BY 1".
|
||||
3 PIC X(40) VALUE " UNTIL X > 6 DISPLAY TE (X) ".
|
||||
3 PIC X(40) VALUE " END-PERFORM PERFORM VARYING X".
|
||||
3 PIC X(40) VALUE " FROM 1 BY 1 UNTIL X > 16 ".
|
||||
3 PIC X(40) VALUE " MOVE T1 (X) TO FF DISPLAY F M".
|
||||
3 PIC X(40) VALUE "OVE T2 (X) TO FF DISPLAY F ".
|
||||
3 PIC X(40) VALUE " END-PERFORM PERFORM VARYING X".
|
||||
3 PIC X(40) VALUE " FROM 7 BY 1 UNTIL X > 16 ".
|
||||
3 PIC X(40) VALUE " DISPLAY TE (X) END-PERFORM ST".
|
||||
3 PIC X(40) VALUE "OP RUN. ".
|
||||
2 T REDEFINES B. 3 TE OCCURS 16. 4 T1 PIC X(40). 4 T2 PIC X(40).
|
||||
1 F. 2 PIC X(25) VALUE ' 3 PIC X(40) VALUE '.
|
||||
2 PIC X VALUE QUOTE. 2 FF PIC X(40). 2 PIC X VALUE QUOTE.
|
||||
2 PIC X VALUE '.'.
|
||||
PROCEDURE DIVISION.
|
||||
PERFORM VARYING X FROM 1 BY 1 UNTIL X > 6 DISPLAY TE (X)
|
||||
END-PERFORM PERFORM VARYING X FROM 1 BY 1 UNTIL X > 16
|
||||
MOVE T1 (X) TO FF DISPLAY F MOVE T2 (X) TO FF DISPLAY F
|
||||
END-PERFORM PERFORM VARYING X FROM 7 BY 1 UNTIL X > 16
|
||||
DISPLAY TE (X) END-PERFORM STOP RUN.
|
||||
8
Task/Quine/Fortran/quine-2.f
Normal file
8
Task/Quine/Fortran/quine-2.f
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
WRITE(6,100)
|
||||
STOP
|
||||
100 FORMAT(6X,12HWRITE(6,100)/6X,4HSTOP/
|
||||
.42H 100 FORMAT(6X,12HWRITE(6,100)/6X,4HSTOP/ ,2(/5X,67H.
|
||||
.42H 100 FORMAT(6X,12HWRITE(6,100)/6X,4HSTOP/ ,2(/5X,67H.
|
||||
.)/T48,2H)/T1,5X2(21H.)/T48,2H)/T1,5X2(21H)/
|
||||
.T62,10H)/6X3HEND)T1,5X2(28H.T62,10H)/6X3HEND)T1,5X2(28H)/6X3HEND)
|
||||
END
|
||||
5
Task/Quine/JavaScript/quine-5.js
Normal file
5
Task/Quine/JavaScript/quine-5.js
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
(function f() {
|
||||
|
||||
return '(' + f.toString() + ')();';
|
||||
|
||||
})();
|
||||
5
Task/Quine/JavaScript/quine-6.js
Normal file
5
Task/Quine/JavaScript/quine-6.js
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
(function f() {
|
||||
|
||||
return '(' + f.toString() + ')();';
|
||||
|
||||
})();
|
||||
5
Task/Quine/JavaScript/quine-7.js
Normal file
5
Task/Quine/JavaScript/quine-7.js
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
(function f() {
|
||||
|
||||
console.log('(' + f.toString() + ')();');
|
||||
|
||||
})();
|
||||
1
Task/Quine/PARI-GP/quine-1.pari
Normal file
1
Task/Quine/PARI-GP/quine-1.pari
Normal file
|
|
@ -0,0 +1 @@
|
|||
()->quine
|
||||
1
Task/Quine/PARI-GP/quine-2.pari
Normal file
1
Task/Quine/PARI-GP/quine-2.pari
Normal file
|
|
@ -0,0 +1 @@
|
|||
quine=()->quine
|
||||
2
Task/Quine/PowerShell/quine-1.psh
Normal file
2
Task/Quine/PowerShell/quine-1.psh
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
$S = '$S = $S.Substring(0,5) + [string][char]39 + $S + [string][char]39 + [string][char]10 + $S.Substring(5)'
|
||||
$S.Substring(0,5) + [string][char]39 + $S + [string][char]39 + [string][char]10 + $S.Substring(5)
|
||||
1
Task/Quine/PowerShell/quine-2.psh
Normal file
1
Task/Quine/PowerShell/quine-2.psh
Normal file
|
|
@ -0,0 +1 @@
|
|||
$MyInvocation.MyCommand.ScriptContents
|
||||
1
Task/Quine/PowerShell/quine-3.psh
Normal file
1
Task/Quine/PowerShell/quine-3.psh
Normal file
|
|
@ -0,0 +1 @@
|
|||
$MyInvocation.MyCommand.Definition
|
||||
1
Task/Quine/PowerShell/quine-4.psh
Normal file
1
Task/Quine/PowerShell/quine-4.psh
Normal file
|
|
@ -0,0 +1 @@
|
|||
function Quine { $MyInvocation.MyCommand.Definition }
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
$d='$d={0}{1}{0}{2}Write-Host -NoNewLine ($d -f [char]39,$d,"`r`n")'
|
||||
Write-Host -NoNewLine ($d -f [char]39,$d,"`r`n")
|
||||
3
Task/Quine/Python/quine-10.py
Normal file
3
Task/Quine/Python/quine-10.py
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
a = 'YSA9ICcnCmIgPSBhLmRlY29kZSgnYmFzZTY0JykKcHJpbnQgYls6NV0rYStiWzU6XQ=='
|
||||
b = a.decode('base64')
|
||||
print b[:5]+a+b[5:]
|
||||
7
Task/Quine/Python/quine-11.py
Normal file
7
Task/Quine/Python/quine-11.py
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
data = (
|
||||
'ZGF0YSA9ICgKCSc=',
|
||||
'JywKCSc=',
|
||||
'JwopCnByZWZpeCwgc2VwYXJhdG9yLCBzdWZmaXggPSAoZC5kZWNvZGUoJ2Jhc2U2NCcpIGZvciBkIGluIGRhdGEpCnByaW50IHByZWZpeCArIGRhdGFbMF0gKyBzZXBhcmF0b3IgKyBkYXRhWzFdICsgc2VwYXJhdG9yICsgZGF0YVsyXSArIHN1ZmZpeA=='
|
||||
)
|
||||
prefix, separator, suffix = (d.decode('base64') for d in data)
|
||||
print prefix + data[0] + separator + data[1] + separator + data[2] + suffix
|
||||
5
Task/Quine/Python/quine-12.py
Normal file
5
Task/Quine/Python/quine-12.py
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
def applyToOwnSourceCode(functionBody):
|
||||
print "def applyToOwnSourceCode(functionBody):"
|
||||
print functionBody
|
||||
print "applyToOwnSourceCode(" + repr(functionBody) + ")"
|
||||
applyToOwnSourceCode('\tprint "def applyToOwnSourceCode(functionBody):"\n\tprint functionBody\n\tprint "applyToOwnSourceCode(" + repr(functionBody) + ")"')
|
||||
3
Task/Quine/Python/quine-9.py
Normal file
3
Task/Quine/Python/quine-9.py
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
x = """x = {0}{1}{0}
|
||||
print x.format(chr(34)*3,x)"""
|
||||
print x.format(chr(34)*3,x)
|
||||
|
|
@ -1,14 +1 @@
|
|||
{
|
||||
string=`cat`
|
||||
printf "$string" "$string"
|
||||
echo
|
||||
echo END-FORMAT
|
||||
} <<'END-FORMAT'
|
||||
{
|
||||
string=`cat`
|
||||
printf "$string" "$string"
|
||||
echo
|
||||
echo END-FORMAT
|
||||
} <<'END-FORMAT'
|
||||
%s
|
||||
END-FORMAT
|
||||
history | tail -n 1 | cut -c 8-
|
||||
|
|
|
|||
14
Task/Quine/UNIX-Shell/quine-3.sh
Normal file
14
Task/Quine/UNIX-Shell/quine-3.sh
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
string=`cat`
|
||||
printf "$string" "$string"
|
||||
echo
|
||||
echo END-FORMAT
|
||||
} <<'END-FORMAT'
|
||||
{
|
||||
string=`cat`
|
||||
printf "$string" "$string"
|
||||
echo
|
||||
echo END-FORMAT
|
||||
} <<'END-FORMAT'
|
||||
%s
|
||||
END-FORMAT
|
||||
Loading…
Add table
Add a link
Reference in a new issue