home.social

#quine — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #quine, aggregated by home.social.

  1. Write a program that outputs an exact copy of its source code (without reading any files).

    Additional constraints:

    • Write the program in portable standard C.
    • All output must come from a single fputs(src, stdout) call where src is an array of char.
    • The main function must be exactly int main(void) { fputs(src, stdout); return 0; }.

    #programming #exercise #quine

  2. Write a program that outputs an exact copy of its source code (without reading any files).

    Additional constraints:

    • Write the program in portable standard C.
    • All output must come from a single fputs(src, stdout) call where src is an array of char.
    • The main function must be exactly int main(void) { fputs(src, stdout); return 0; }.

    #programming #exercise #quine

  3. Write a program that outputs an exact copy of its source code (without reading any files).

    Additional constraints:

    • Write the program in portable standard C.
    • All output must come from a single fputs(src, stdout) call where src is an array of char.
    • The main function must be exactly int main(void) { fputs(src, stdout); return 0; }.

    #programming #exercise #quine

  4. Write a program that outputs an exact copy of its source code (without reading any files).

    Additional constraints:

    • Write the program in portable standard C.
    • All output must come from a single fputs(src, stdout) call where src is an array of char.
    • The main function must be exactly int main(void) { fputs(src, stdout); return 0; }.

    #programming #exercise #quine

  5. Write a program that outputs an exact copy of its source code (without reading any files).

    Additional constraints:

    • Write the program in portable standard C.
    • All output must come from a single fputs(src, stdout) call where src is an array of char.
    • The main function must be exactly int main(void) { fputs(src, stdout); return 0; }.

    #programming #exercise #quine

  6. I wrote a #quine in the little programming language I've been making. I'm happy about that.

  7. I wrote a #quine in the little programming language I've been making. I'm happy about that.

  8. On the tangential topic of quines.

    Here is my "due diligence".
    By the way, in October I realized on my own a quine could be done with
    `lambda' and `let', tried to work it out, ran out of time, left it
    aside, and, alas, never went back to it...

    (defun quinep (form)
    "Test whether a non-atom FORM evaluates to itself.
    Test equality with `equalp' for better coverage (of implementations
    that construct structures when reading backquoted expressions)."
    ;; A justified use of `eval'.
    (and (not (atom form))
    (equalp form (eval form))))

    ;; NB: `*print-pretty*' may affect the printing of backquotes.

    (defconstant pitmanual-funnies-eni-mmcm
    '(LET ((LET '`(LET ((LET ',LET)) ,LET)))
    `(LET ((LET ',LET)) ,LET))
    "MMcM's quine.
    See <maclisp.info/pitmanual/funnies>,
    «MMcM@MIT-AI 09/17/79 15:37:16 Re: ''s».")

    (defconstant pitmanual-funnies-eni-rwk-kmp
    '((LAMBDA (LAMBDA) (LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    '(LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    "RWK-KMP's quine.
    See <maclisp.info/pitmanual/funnies>,
    «KMP,RWK@MIT-ML (Sent by KMP@MIT-ML) 09/18/79 03:37:32».")

    (assert (quinep pitmanual-funnies-eni-mmcm))
    (assert (quinep pitmanual-funnies-eni-rwk-kmp))

    #CommonLisp
    #ForKicks
    #Pitmanual
    #PitmanualFunnies
    #Quine

    @kentpitman @dougmerritt @screwlisp @nosrednayduj

  9. On the tangential topic of quines.

    Here is my "due diligence".
    By the way, in October I realized on my own a quine could be done with
    `lambda' and `let', tried to work it out, ran out of time, left it
    aside, and, alas, never went back to it...

    (defun quinep (form)
    "Test whether a non-atom FORM evaluates to itself.
    Test equality with `equalp' for better coverage (of implementations
    that construct structures when reading backquoted expressions)."
    ;; A justified use of `eval'.
    (and (not (atom form))
    (equalp form (eval form))))

    ;; NB: `*print-pretty*' may affect the printing of backquotes.

    (defconstant pitmanual-funnies-eni-mmcm
    '(LET ((LET '`(LET ((LET ',LET)) ,LET)))
    `(LET ((LET ',LET)) ,LET))
    "MMcM's quine.
    See <maclisp.info/pitmanual/funnies>,
    «MMcM@MIT-AI 09/17/79 15:37:16 Re: ''s».")

    (defconstant pitmanual-funnies-eni-rwk-kmp
    '((LAMBDA (LAMBDA) (LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    '(LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    "RWK-KMP's quine.
    See <maclisp.info/pitmanual/funnies>,
    «KMP,RWK@MIT-ML (Sent by KMP@MIT-ML) 09/18/79 03:37:32».")

    (assert (quinep pitmanual-funnies-eni-mmcm))
    (assert (quinep pitmanual-funnies-eni-rwk-kmp))

    #CommonLisp
    #ForKicks
    #Pitmanual
    #PitmanualFunnies
    #Quine

    @kentpitman @dougmerritt @screwlisp @nosrednayduj

  10. On the tangential topic of quines.

    Here is my "due diligence".
    By the way, in October I realized on my own a quine could be done with
    `lambda' and `let', tried to work it out, ran out of time, left it
    aside, and, alas, never went back to it...

    (defun quinep (form)
    "Test whether a non-atom FORM evaluates to itself.
    Test equality with `equalp' for better coverage (of implementations
    that construct structures when reading backquoted expressions)."
    ;; A justified use of `eval'.
    (and (not (atom form))
    (equalp form (eval form))))

    ;; NB: `*print-pretty*' may affect the printing of backquotes.

    (defconstant pitmanual-funnies-eni-mmcm
    '(LET ((LET '`(LET ((LET ',LET)) ,LET)))
    `(LET ((LET ',LET)) ,LET))
    "MMcM's quine.
    See <maclisp.info/pitmanual/funnies>,
    «MMcM@MIT-AI 09/17/79 15:37:16 Re: ''s».")

    (defconstant pitmanual-funnies-eni-rwk-kmp
    '((LAMBDA (LAMBDA) (LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    '(LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    "RWK-KMP's quine.
    See <maclisp.info/pitmanual/funnies>,
    «KMP,RWK@MIT-ML (Sent by KMP@MIT-ML) 09/18/79 03:37:32».")

    (assert (quinep pitmanual-funnies-eni-mmcm))
    (assert (quinep pitmanual-funnies-eni-rwk-kmp))

    #CommonLisp
    #ForKicks
    #Pitmanual
    #PitmanualFunnies
    #Quine

    @kentpitman @dougmerritt @screwlisp @nosrednayduj

  11. On the tangential topic of quines.

    Here is my "due diligence".
    By the way, in October I realized on my own a quine could be done with
    `lambda' and `let', tried to work it out, ran out of time, left it
    aside, and, alas, never went back to it...

    (defun quinep (form)
    "Test whether a non-atom FORM evaluates to itself.
    Test equality with `equalp' for better coverage (of implementations
    that construct structures when reading backquoted expressions)."
    ;; A justified use of `eval'.
    (and (not (atom form))
    (equalp form (eval form))))

    ;; NB: `*print-pretty*' may affect the printing of backquotes.

    (defconstant pitmanual-funnies-eni-mmcm
    '(LET ((LET '`(LET ((LET ',LET)) ,LET)))
    `(LET ((LET ',LET)) ,LET))
    "MMcM's quine.
    See <maclisp.info/pitmanual/funnies>,
    «MMcM@MIT-AI 09/17/79 15:37:16 Re: ''s».")

    (defconstant pitmanual-funnies-eni-rwk-kmp
    '((LAMBDA (LAMBDA) (LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    '(LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    "RWK-KMP's quine.
    See <maclisp.info/pitmanual/funnies>,
    «KMP,RWK@MIT-ML (Sent by KMP@MIT-ML) 09/18/79 03:37:32».")

    (assert (quinep pitmanual-funnies-eni-mmcm))
    (assert (quinep pitmanual-funnies-eni-rwk-kmp))

    #CommonLisp
    #ForKicks
    #Pitmanual
    #PitmanualFunnies
    #Quine

    @kentpitman @dougmerritt @screwlisp @nosrednayduj

  12. On the tangential topic of quines.

    Here is my "due diligence".
    By the way, in October I realized on my own a quine could be done with
    `lambda' and `let', tried to work it out, ran out of time, left it
    aside, and, alas, never went back to it...

    (defun quinep (form)
    "Test whether a non-atom FORM evaluates to itself.
    Test equality with `equalp' for better coverage (of implementations
    that construct structures when reading backquoted expressions)."
    ;; A justified use of `eval'.
    (and (not (atom form))
    (equalp form (eval form))))

    ;; NB: `*print-pretty*' may affect the printing of backquotes.

    (defconstant pitmanual-funnies-eni-mmcm
    '(LET ((LET '`(LET ((LET ',LET)) ,LET)))
    `(LET ((LET ',LET)) ,LET))
    "MMcM's quine.
    See <maclisp.info/pitmanual/funnies>,
    «MMcM@MIT-AI 09/17/79 15:37:16 Re: ''s».")

    (defconstant pitmanual-funnies-eni-rwk-kmp
    '((LAMBDA (LAMBDA) (LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    '(LIST (LIST 'LAMBDA '(LAMBDA) LAMBDA)
    (LIST 'QUOTE LAMBDA)))
    "RWK-KMP's quine.
    See <maclisp.info/pitmanual/funnies>,
    «KMP,RWK@MIT-ML (Sent by KMP@MIT-ML) 09/18/79 03:37:32».")

    (assert (quinep pitmanual-funnies-eni-mmcm))
    (assert (quinep pitmanual-funnies-eni-rwk-kmp))

    #CommonLisp
    #ForKicks
    #Pitmanual
    #PitmanualFunnies
    #Quine

    @kentpitman @dougmerritt @screwlisp @nosrednayduj

  13. Thanks to the #c23 #embed macro, I may have written the world's shortest #quine.
    ```c
    #include<stdio.h>
    int main(){puts((char[]){
    #embed"q.c"
    ,0});}
    ```
    (I doubt that I'm the first to do this)
    We just need to politely ignore the extra `\n` injected by `puts`. Otherwise, replace `puts` with `printf`.

  14. Thanks to the macro, I may have written the world's shortest .
    ```c
    <stdio.h>
    int main(){puts((char[]){
    "q.c"
    ,0});}
    ```
    (I doubt that I'm the first to do this)
    We just need to politely ignore the extra `\n` injected by `puts`. Otherwise, replace `puts` with `printf`.

  15. Thanks to the #c23 #embed macro, I may have written the world's shortest #quine.
    ```c
    #include<stdio.h>
    int main(){puts((char[]){
    #embed"q.c"
    ,0});}
    ```
    (I doubt that I'm the first to do this)
    We just need to politely ignore the extra `\n` injected by `puts`. Otherwise, replace `puts` with `printf`.

  16. Thanks to the #c23 #embed macro, I may have written the world's shortest #quine.
    ```c
    #include<stdio.h>
    int main(){puts((char[]){
    #embed"q.c"
    ,0});}
    ```
    (I doubt that I'm the first to do this)
    We just need to politely ignore the extra `\n` injected by `puts`. Otherwise, replace `puts` with `printf`.

  17. Thanks to the #c23 #embed macro, I may have written the world's shortest #quine.
    ```c
    #include<stdio.h>
    int main(){puts((char[]){
    #embed"q.c"
    ,0});}
    ```
    (I doubt that I'm the first to do this)
    We just need to politely ignore the extra `\n` injected by `puts`. Otherwise, replace `puts` with `printf`.

  18. Very similar to my interpretation of last year's Genuary 3 "42 Lines of Code" (link below), this code is a "Quine" that outputs itself into a stylized image using SVG curves and gradients.

    universeodon.com/@codeismycanv

    #genuary #genuary2026 #genuary11 #quine #svg

  19. Very similar to my interpretation of last year's Genuary 3 "42 Lines of Code" (link below), this code is a "Quine" that outputs itself into a stylized image using SVG curves and gradients.

    universeodon.com/@codeismycanv

    #genuary #genuary2026 #genuary11 #quine #svg

  20. Very similar to my interpretation of last year's Genuary 3 "42 Lines of Code" (link below), this code is a "Quine" that outputs itself into a stylized image using SVG curves and gradients.

    universeodon.com/@codeismycanv

    #genuary #genuary2026 #genuary11 #quine #svg

  21. Very similar to my interpretation of last year's Genuary 3 "42 Lines of Code" (link below), this code is a "Quine" that outputs itself into a stylized image using SVG curves and gradients.

    universeodon.com/@codeismycanv

    #genuary #genuary2026 #genuary11 #quine #svg

  22. Very similar to my interpretation of last year's Genuary 3 "42 Lines of Code" (link below), this code is a "Quine" that outputs itself into a stylized image using SVG curves and gradients.

    universeodon.com/@codeismycanv

    #genuary #genuary2026 #genuary11 #quine #svg

  23. This is an unbirthday present for @screwlisp,
    who posted earlier about quines.

    To give it as a puzzle at first:

    find a Python quine as a string Q such that eval(Q) == Q.

    A spoiler to follow.

    _________
    The term "fixed point" comes to mind. And the Y combinator comes into
    this picture as well; wie another day.

    (Estimating Python's degree of homoiconicity is left as an exercise.)

    #ComputerProgramming
    #Homoiconicity
    #ProgrammingPuzzle
    #Puzzle
    #Python
    #Quine

  24. This is an unbirthday present for @screwlisp,
    who posted earlier about quines.

    To give it as a puzzle at first:

    find a Python quine as a string Q such that eval(Q) == Q.

    A spoiler to follow.

    _________
    The term "fixed point" comes to mind. And the Y combinator comes into
    this picture as well; wie another day.

    (Estimating Python's degree of homoiconicity is left as an exercise.)

    #ComputerProgramming
    #Homoiconicity
    #ProgrammingPuzzle
    #Puzzle
    #Python
    #Quine

  25. The Law-German wird fer “quine“ wad be "Deern".

    ---
    #DoricWordOfTheDay by Doric Books: #quine (girl, young woman)
    #WriteInScots #Doric #Scots

  26. The Law-German wird fer “quine“ wad be "Deern".

    ---
    #DoricWordOfTheDay by Doric Books: #quine (girl, young woman)
    #WriteInScots #Doric #Scots

  27. Worth noting: there is already a Rockstar quine, and it's actually quite pretty, as are most Rockstar programs.

    the world is a sea
    burn the world in fire
    the song says shout "the world is a sea" with fire, "burn the world in fire", fire, "the song says " with the song, and fire with the song
    shout "the world is a sea" with fire, "burn the world in fire", fire, "the song says " with the song, and fire with the song

    #quine #rockstarlang

  28. Worth noting: there is already a Rockstar quine, and it's actually quite pretty, as are most Rockstar programs.

    the world is a sea
    burn the world in fire
    the song says shout "the world is a sea" with fire, "burn the world in fire", fire, "the song says " with the song, and fire with the song
    shout "the world is a sea" with fire, "burn the world in fire", fire, "the song says " with the song, and fire with the song

    #quine #rockstarlang

  29. I should write a quine in Rockstar that actually outputs itself in reverse, i.e. a quine that only works via back-masking.

    #quine #rockstarlang

  30. I should write a quine in Rockstar that actually outputs itself in reverse, i.e. a quine that only works via back-masking.

    #quine #rockstarlang

  31. A couple of #Python #Quine one-liners.

    s='s=%r;print(s%%s,)';print(s%s,)

    (lambda s: s%s)('(lambda s: s%%s)(%r)')

    E.g.:

    >>> s = "(lambda s: s%s)('(lambda s: s%%s)(%r)')"
    >>> eval(s) == s
    True