Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

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

58 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,
Андрей.

0 new messages