Программа печатающая сама себя

53 views
Skip to first unread message

Nick Maslov

unread,
Aug 6, 1999, 3:00:00 AM8/6/99
to
┌─────────────────────
│ Приветик, Yuri!
└─────────────────────

[...]
YK> Кто-то может знает на других языках ?

Это самый большой найс:

List

:-)

Всего хорошего. - Nick -


Roman =KRoN= Karshiev

unread,
Aug 17, 1999, 3:00:00 AM8/17/99
to
On Fri, 06 Aug 99 22:44:45 +0400, Nick Maslov
<Nick....@f225.n463.z2.fidonet.org> wrote:

> YK> Кто-то может знает на других языках ?
> Это самый большой найс:
> List
> :-)

Это только на Бейсике...
Есть ещё более короткий и универсальный вариант. Пустая программа. ;)

..Глубина-глубина, я не твой...
=KRoN= http://avia.da.ru
ICQ:4886816 mailto:kro...@usa.net

Kirill Polyakov

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
Hello, kro...@usa.net.

17 Aug 99 12:46, kro...@usa.net wrote to All:


>> YK> Кто-то может знает на других языках ?
>> Это самый большой найс:
>> List
>> :-)

kr> Это только на Бейсике...
kr> Есть ещё более короткий и универсальный вариант. Пустая программа. ;)
в твоей пустой программе баг - она _ничего_ _не печатает_ :)))

вот, классика:

=== Begin of QUINE.C ===
char *f="char *f=%c%s%c;void main(){printf(f,34,f,34,10);}%c";
void main(){printf(f,34,f,34,10);}
=== End of QUINE.C ===

кстати, называется этот конкурс в честь чувака, который придумал первую
программу подобного рода (кажется, какой-то профессор из какого-то забугорного
института). он был спецом в области таких программ, насколько я помню.

[apocalypse][riders on the storm]
Bye, kro...@usa.net.
... np: Dire Straits

Dmitry Poniatov

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
On 17/Aug/99 at 12:46 Roman =KRoN= Karshiev writes to All:


> YK> Кто-то может знает на других языках ?
> Это самый большой найс:
> List
> :-)

в диалекте ФОРТа SMAL32 (см. www.forth.org.ru) есть слово SEE, позволяющее
просмотреть определения слов без их исходного кода (декомпиляция шитого кода),
WORDS - список доступных слов (функций)


Alexander Zabairatsky

unread,
Aug 20, 1999, 3:00:00 AM8/20/99
to
Hello Kirill!

Wednesday August 18 1999 02:31, Kirill Polyakov wrote to kro...@usa.net:

KP> кстати, называется этот конкурс в честь чувака, который придумал первую
KP> программу подобного рода (кажется, какой-то профессор из какого-то
KP> забугорного института). он был спецом в области таких программ, насколько
KP> я помню.

Чарлз Уэзерелл. Этюды для программистов. М.б "Мир", 1982. Перевод книги 1972
года. Сейчас перечитал эту 9-ю главу, "Познвй самого себя, или... программа,
печатающая собственный текст", всего страничка, но написана великолепно! И
вообще, книжка замечательная.


Всего доброго!

А. Забайрацкий.


... Если в одно ухо влетает, а в другое вылетает, заткни одно из них ...

Roman =KRoN= Karshiev

unread,
Aug 23, 1999, 3:00:00 AM8/23/99
to
c:\>deep.exe

On Wed, 18 Aug 99 01:31:06 +0400, Kirill Polyakov
<Kirill....@p33.f48.n5002.z2.fidonet.org> wrote:

> kr> Это только на Бейсике...
> kr> Есть ещё более короткий и универсальный вариант. Пустая программа. ;)
>в твоей пустой программе баг - она _ничего_ _не печатает_ :)))

Нет программы - нечего и печатать.
Всё строго.

Peter Obuhov

unread,
Aug 23, 1999, 3:00:00 AM8/23/99
to
█ ▌█
█▀▌█ kro...@usa.net !

А хитрый kro...@usa.net писал All, Вторник Август 17 1999 11:46, буквально
следующее:

>> YK> Кто-то может знает на других языках ?

Мы в шкле на кружке мучались. Она имхо не смовсем верно себя печатает, о там
имхо легко исправить:

█▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ Тут начинается файл Selfshow.Pas ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█
var a: array[1..11] of string;
n:integer;
begin
a[1]:='var a: array[1..11] of string;';
a[2]:=' n:integer;';
a[3]:='begin';
a[4]:=' for n:=1 to 3 do';
a[5]:=' writeln(s[n]);';
a[6]:=' for n:=1 to 5 do';
a[7]:=' writeln('' a['',n,'']:='''''',a[n],'''''';'');';
a[8]:=' for n:=4 to 10 do';
a[9]:=' writeln(a[n]);';
a[10]:=' writeln(a[11]);';
a[11]:='end.';
for n:=1 to 3 do
writeln(a[n]);
for n:=1 to 11 do
writeln(' a[',n,']:=''',a[n],''';');
for n:=4 to 10 do
writeln(a[n]);
writeln(a[11]);
end. █▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ А здесь Selfshow.Pas кончается
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█

С громадным уважением, Peter Obuhov. [Team Empire]·[Team Smile]


Nick Maslov

unread,
Aug 23, 1999, 3:00:00 AM8/23/99
to
┌─────────────────────
│ Приветик, Roman!
└─────────────────────

[...]


>> YK> Кто-то может знает на других языках ?

>> Это самый большой найс:
>> List
>> :-)

RK> Это только на Бейсике...

А разве не сабж ?

RK> Есть ещё более короткий и универсальный вариант. Пустая программа. ;)

Хм-мм ... Что касается универсальности, то имхо далеко немногие языки
понимают "пустой" код.

Kirill Polyakov

unread,
Aug 24, 1999, 3:00:00 AM8/24/99
to
Хаюшки, kro...@usa.net!

23 Aug 99 13:04, kro...@usa.net wrote to All:


>> kr> Это только на Бейсике...

>> kr> Есть ещё более короткий и универсальный вариант. Пустая
>> kr> программа. ;)


>> в твоей пустой программе баг - она _ничего_ _не печатает_ :)))

kr> Hет программы - нечего и печатать.
но программа _должна_ _быть_. без этого условия не состоялся бы даже наш
разговор...
kr> Всё строго.
kr> ;)
:)))
вот ещё на эту же тему
=== Begin of ANSISELF.C ===
/*
** Challenge: Write the smallest self-duplicating program, not
** reading the source file, which successfully exits and is strictly
** conforming Standard C.
**
** Public domain response by Thad Smith
**
** from serge terekhov: main() must be written on single line without any
** spaces.
*/

#include<stdio.h>
main(){char*c="\\\"#include<stdio.h>%cmain(){char*c=%c%c%c%.102s%cn%c;printf(c+
2,c[102],c[1],*c,*c,c,*c,c[1]);exit(0);}\n";printf(c+2,c[102],c[1],*c,*c,c,*c,c
[1]);exit(0);}
=== End of ANSISELF.C ===

2 Олл: народ, есть куча _найсовых_ исходников. могу отправлять периодически
сюда, по одному-два в день, например. чтобы разнообразить бытие эхи. как вы к
такому отнесётесь? :)
честно говоря, эти исходники либо здесь когда-то пролетали, либо из Obfuscated
C Contest выдраны. (правда от этого их найсовость не меняется :)

итак?

[пограничник своего состояния]
Bye, kro...@usa.net.
... np: Theatre Of Tragedy "Theatre Of Tragedy"/"A Rose For The Dead"

Ilya Gershman

unread,
Aug 24, 1999, 3:00:00 AM8/24/99
to
Hi Kirill!

24 Авг 99, Kirill Polyakov wrote to kro...@usa.net:

KP> вот ещё на этy же темy
KP> === Begin of ANSISELF.C ===
KP> #include<stdio.h>
KP> main(){char*c="\\\"#include<stdio.h>%cmain(){char*c=%c%c%c%.102s%cn%c;
KP> printf(c+ 2,c[102],c[1],*c,*c,c,*c,c[1]);exit(0);}\n";printf(c+2,c[102
KP> ],c[1],*c,*c,c,*c,c [1]);exit(0);}
KP> === End of ANSISELF.C ===

=====================■ Start Windows Clipboard ■=====================
char*a="char*a=%c%s%c;main(){printf(a,34,a,34);}";main(){printf(a,34,a,34);}
======================■ End Windows Clipboard ■======================

тyт вpоде меньше pазмеp не сделаешь

=====================■ Start Windows Clipboard ■=====================
Const S:Array[1..2] Of String=('Const S:Array[1..2] Of String=(',
');Begin
WriteLn(S[1]);WriteLn(#39+S[1]+#39#44);WriteLn(#39+S[2]+#39);WriteLn(S[2]);End.'
);Begin
WriteLn(S[1]);WriteLn(#39+S[1]+#39#44);WriteLn(#39+S[2]+#39);WriteLn(S[2]);End.
======================■ End Windows Clipboard ■======================

а тyт, неизвестно... может y кого-нибyдь полyчится?

Yours,
/Ilya


Yaroslav Mantsevich

unread,
Aug 24, 1999, 3:00:00 AM8/24/99
to

Добpы дзень цябе ≈ хатy, Kirill!

KP> 2 Олл: народ, есть куча _найсовых_ исходников. могу отправлять
KP> периодически сюда, по одному-два в день, например. чтобы разнообразить
KP> бытие эхи. как вы к такому отнесётесь? :) честно говоря, эти исходники
KP> либо здесь когда-то пролетали, либо из Obfuscated C Contest выдраны.
KP> (правда от этого их найсовость не меняется :)

И ты яшчэ спpашиваешь? :) Конечно пость!


ICQ: 31826164
net...@mail.ru Яpасла≈

... Бороться и искать, найти и перепрятать

Kirill Polyakov

unread,
Aug 24, 1999, 3:00:00 AM8/24/99
to
Хаюшки, Yaroslav!

24 Aug 99 15:02, Yaroslav Mantsevich wrote to Kirill Polyakov:


KP>> 2 Олл: народ, есть куча _найсовых_ исходников. могу отправлять
KP>> периодически сюда, по одному-два в день, например. чтобы

KP>> разнообразить бытие эхи. как вы к такому отнесётесь? :) честно
KP>> говоря, эти исходники либо здесь когда-то пролетали, либо из
KP>> Obfuscated C Contest выдраны. (правда от этого их найсовость не
KP>> меняется :)
YM> И ты яшчэ спpашиваешь? :) Конечно пость!
ну! за найсовые исходники! ;)

зы: вы уж меня извините, ежели я повторюсь исходниками иногда, невзначай.
и ещё. они не все рассчитаны на intel/ibm... т.е. там есть что-то для pdp
стареньких etc...
[пограничник своего состояния]
Bye, Yaroslav.
... np: Enigma 3

Peter Obuhov

unread,
Aug 25, 1999, 3:00:00 AM8/25/99
to
█ ▌█
█▀▌█ kro...@usa.net !

А хитрый kro...@usa.net писал All, Вторник Август 17 1999 11:46, буквально
следующее:

>> YK> Кто-то может знает на других языках ?

Vitaly Lugovsky

unread,
Aug 27, 1999, 3:00:00 AM8/27/99
to
Nick Maslov <Nick....@f225.n463.z2.fidonet.org> wrote:
RK>> Есть ещё более короткий и универсальный вариант. Пустая программа. ;)

NM> Хм-мм ... Что касается универсальности, то имхо далеко немногие языки
NM> понимают "пустой" код.

У пустой программы есть одно большое преимущество - она написана
сразу на всех языках. И ей для исполнения даже компутер не нужен.

--

V.S.Lugovsky aka Mauhuur (http://ontil.ihep.su/~vsl) (UIN=45482254)


Sasha Dovgaluk

unread,
Aug 27, 1999, 3:00:00 AM8/27/99
to
--==$ Hi /Vitaly/! $==--

VL> У пустой пpогpаммы есть одно большое пpеимущество - она написана
VL> сpазу на всех языках. И ей для исполнения даже компутеp не нужен.

на всех языках? и печатает сама себя?

попpобуй на паскале, ассемблеpе, си, делфи скомпилиpовать пустую пpогpамму...

With best wishes,
Dovgaluk Alexander [Team Eureka] [Team ASM-Rulez]
... несколько я писем назад я и пpедлагал... (C) 2:5030/485

Leonid Chornyy

unread,
Aug 28, 1999, 3:00:00 AM8/28/99
to
дА╖АГдАААГдАГ дАГ дАААГ
б Бб аа▓б Б б Б б б Б
б б Бб аа▓б ДАГб ДАГб б Б
ла║амлааамлааамлааамлааам Vitaly Lugovsky, hope you are having a nice day

27-Aug-99 20:33:36, Vitaly Lugovsky wrote to Nick Maslov
Subject: Re: Ё╥╧╟╥┴══┴ ╨┼▐┴╘┴└▌┴╤ ╙┴═┴ ╙┼┬╤

RK>>> х╙╘╪ ┼▌г ┬╧╠┼┼ ╦╧╥╧╘╦╔╩ ╔ ╒╬╔╫┼╥╙┴╠╪╬┘╩ ╫┴╥╔┴╬╘. Ё╒╙╘┴╤
RK>>> ╨╥╧╟╥┴══┴. ;)

NM>> ш═-══ ... ■╘╧ ╦┴╙┴┼╘╙╤ ╒╬╔╫┼╥╙┴╠╪╬╧╙╘╔, ╘╧ ╔═╚╧ ─┴╠┼╦╧ ╬┼═╬╧╟╔┼
NM>> ╤┌┘╦╔ ╨╧╬╔═┴└╘ "╨╒╙╘╧╩" ╦╧─.

VL> ї ╨╒╙╘╧╩ ╨╥╧╟╥┴══┘ ┼╙╘╪ ╧─╬╧ ┬╧╠╪█╧┼ ╨╥┼╔═╒▌┼╙╘╫╧ - ╧╬┴ ╬┴╨╔╙┴╬┴
VL> ╙╥┴┌╒ ╬┴ ╫╙┼╚ ╤┌┘╦┴╚. щ ┼╩ ─╠╤ ╔╙╨╧╠╬┼╬╔╤ ─┴╓┼ ╦╧═╨╒╘┼╥ ╬┼ ╬╒╓┼╬.

ў ╨╒╙╘╧╩ ╨╥╧╟╥┴══┼ ─┴╓┼ ═╧╟╒╘ ┬┘╘╪ ╧█╔┬╦╔ - ┴ ╧╬┴ ╫╙┼ ╥┴╫╬╧ ╥┴┬╧╘┴┼╘
╨╥┴╫╔╠╪╬╧! :-)

-=> Yours sincerely, Leonid Chornyy <=-
[Team DrevneKievs'ka] [Team TNT] [Team BoDy]


Martynenko

unread,
Aug 29, 1999, 3:00:00 AM8/29/99
to
Hello, Sasha Dovgaluk !


> VL> У пустой пpогpаммы есть одно большое пpеимущество - она написана
> VL> сpазу на всех языках. И ей для исполнения даже компутеp не нужен.
> на всех языках? и печатает сама себя?
> SD> попpобуй на паскале, ассемблеpе, си, делфи скомпилиpовать пустую
> SD> пpогpамму...

Нет уж, транслятор - это одно, а язык - часто нечто другое.
Хотя ты в чём-то прав, на паскале,к примеру, хотя бы begin end. должны
быть. А если по Вирту, а не Канну - то и Program ...; Это по
определению.
Good Luck! S.Y.Andrew.

Vitaly Lugovsky

unread,
Aug 29, 1999, 3:00:00 AM8/29/99
to
Sasha Dovgaluk <Sasha.D...@p500.f10.n5032.z2.fidonet.org> wrote:
VL>> У пустой пpогpаммы есть одно большое пpеимущество - она написана
VL>> сpазу на всех языках. И ей для исполнения даже компутеp не нужен.

SD> на всех языках? и печатает сама себя?

SD> попpобуй на паскале, ассемблеpе, си, делфи скомпилиpовать пустую пpогpамму...

Сударь не понял... Пустая программа не требует компиляции - на то она
и пустая. ;)

P.S. Математики, блин.... Пустую программу определить не могут ;)

Leonid Chornyy

unread,
Aug 29, 1999, 3:00:00 AM8/29/99
to
Hi Vitaly, hope you are having a nice day

29-Aug-99 16:26:18, Vitaly Lugovsky wrote to Sasha Dovgaluk
Subject: Re: Пpогpамма печатающая сама себя

VL>>> У пустой пpогpаммы есть одно большое пpеимущество - она написана
VL>>> сpазу на всех языках. И ей для исполнения даже компутеp не

VL>>> нужен.

SD>> на всех языках? и печатает сама себя?

SD>> попpобуй на паскале, ассемблеpе, си, делфи скомпилиpовать пустую

VL> пpогpамму..

VL> Сударь не понял... Пустая программа не требует компиляции - на то
VL> она и пустая. ;)

С точки зрения алгоритмики, пустая программа это действительно
нечто похожее на чистый лист бумаги (вернее даже и бумаги не
должно быть - чистая абстракция), но с точки зрения, скажем
Паскаля, пустая программа - это program smth
begin

end.
В BP 7.0 после компиляции гдето 24к! (если правильно помню:-))

Vlad Nazarov

unread,
Aug 30, 1999, 3:00:00 AM8/30/99
to

_─═══_ Hello Leonid _═══─_

29 авг 1999 года (а было тогда 18:15)
Leonid Chornyy в своем письме к Vitaly Lugovsky писал:

VL>>>> У пустой пpогpаммы есть одно большое пpеимущество - она

VL>>>> написана сpазу на всех языках. И ей для исполнения даже
VL>>>> компутеp не нужен.

SD>>> на всех языках? и печатает сама себя?

SD>>> попpобуй на паскале, ассемблеpе, си, делфи скомпилиpовать

SD>>> пустую
VL>> пpогpамму..

VL>> Сударь не понял... Пустая программа не требует компиляции - на то
VL>> она и пустая. ;)

LC> С точки зрения алгоритмики, пустая программа это
LC> действительно
LC> нечто похожее на чистый лист бумаги (вернее даже и бумаги не
LC> должно быть - чистая абстракция), но с точки зрения, скажем
LC> Паскаля, пустая программа - это program smth
LC> begin

LC> end.
LC> В BP 7.0 после компиляции гдето 24к! (если правильно
LC> помню:-))

Hе правельно 1.5k .

С уважением, _Vlad_ _Nazarov_.
─══[U.S.M.T.U. Team]══─
... Тpудно жить ничего не делая, но мы тpудностей не боимся.

Andrey Tarasevich

unread,
Aug 31, 1999, 3:00:00 AM8/31/99
to
Hi !

RK>> Есть ещё более короткий и универсальный вариант. Пустая программа.
;)

Хе-хе... Не потянет. "Не печатать данных" и "напечатать данные нулевой
длины" - это разные вещи. :)

Best regards,
Андрей.

Reply all
Reply to author
Forward
0 new messages