Имя: Пароль:
IT
Веб-мастеринг
Как такое может работать? Шахматная программа из 1024 байт
,
0 D_Pavel
 
26.09.12
06:16
Как она может думать при таком маленьком размере?



         <canvas id="c"></canvas>
         <script>for(B=i=y=u=b=i=5-5,x=10,I=[],l=[];B++<304;I[B-1]=B%x?B/x%x<2|B%x<2?7:B/x&4?0:l[i++]="ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM@G@TSb~?A6J57IKJT576,+-48HLSUmgukgg OJNMLK  IDHGFE".charCodeAt(y++)-64:7);function X(c,h,e,s){c^=8;for(var o,S,C,A,R,T,G,d=e&&X(c,0)>1e4,n,N=-1e8,O=20,K=78-h<<9;++O<99;)if((o=I[T=O])&&(G=o^c)<7){A=G--&2?8:4;C=o-9?l[61+G]:49;do if(!(R=I[T+=l[C]])&&!!G|A<3||(R+1^c)>9&&G|A>2){if(!(R-2&7))return K;n=G|(c?T>29:T<91)?o:6^c;S=(R&&l[R&7|32]*2-h-G)+(n-o?110:!G&&(A<2)+1);if(e>h||1<e&e==h&&S>2|d){I[T]=n;I[O]=0;S-=X(c,h+1,e,S-N);if(!(h||e-1|B-O|T-b|S<-1e4))return W(),c&&setTimeout("X(8,0,2),X(8,0,1)",75);I[O]=o;I[T]=R}if(S>N||!h&S==N&&Math.random()<.5)if(N=S,e>1)if(h?s-S<0:(B=O,b=T,0))break}while(!R&G>2||(T=O,(G||A>2|(c?O>78:O<41)&!R)&&++C*--A))}return-K+768<N|d&&N}function W(){i="<table>";for(u=18;u<99;document.body.innerHTML=i+=++u%x-9?"<th width=60 height=60 onclick='I[b="+u+"]>8?W():X(0,0,1)'style='font-size:50px'bgcolor=#"+(u-B?u*.9&1||9:"d")+"0f0e0>&#"+(I[u]?9808+l[67+I[u]]:160):u++&&"<tr>")B=b}W()</script>


238 Юрий Лазаренко
 
27.09.12
08:07
(234) "А что, можно было?!!" (с) Саус Парк  ))))
239 Name2006
 
27.09.12
08:15
(0) "ЭВМ Наири (базовая модель), разработанная в Ереванском научно-исследовательском институте математических машин (ЕрНИИММ) под руководством главного конструктора — Овсепяна Грачья Есаевича. представляла малогабаритную универсальную машину для решения задач в НИИ, КБ, ВЦ, заводах. Быстродействие машины составляло 1500-2000 оп/сек, ёмкость ОЗУ – 1Кб, ёмкость ДЗУ – 16 Кб. Элементная база полупроводниковая. Ввод информации осуществлялся с телеграфного аппарата СТА-2м, вывод – на телеграфный аппарат РТА-50-2М. Машина потребляла мощность до 1,6 квт., 220 В, однофазная сеть, и занимала площадь около 20 кв. м. Конструктивно она была выполнена в виде электронного стола и стола питания"

А теперь главное - в конце 70-х лично наблюдал работу шахматной программы на этой машинке. (повторю - ёмкость ОЗУ 1Кб, программа загружалась с перфоленты).
240 Name2006
 
27.09.12
08:17
В то время никого не удивляло - как это можно в 1кб затолкать шахматы
241 D_Pavel
 
27.09.12
08:18
(240) В 16Кб вообще-то
242 sda553
 
27.09.12
09:29
(237) Да я уже видел, я сегодня разобрал уже основные элементы этой проги.
243 ptrtss
 
27.09.12
10:25
(12) Инет отключи
244 Coldboy
 
27.09.12
10:42
а где тута вообще разметка поля идет и фигур ...
245 aka MIK
 
27.09.12
10:49
(244)  ECDFBDCEAAAAAAAAIIIIIIIIMKLNJLKM - это разметка фигур со сдвигом их по табличке символов до шахматных знаков
246 IOL
 
27.09.12
10:50
ДЗУ, как правило расширение ОЗУ
247 Coldboy
 
27.09.12
10:54
(245) как все просто оказывается и поле оно чертит и фигуры, и двигать помогает их по полю?
248 aka MIK
 
27.09.12
10:55
(247) Именно так и есть
249 oslokot
 
27.09.12
14:45
В хроме заместо фигур квадратики
250 Волшебник
 
27.09.12
14:46
(249) Выбросите его на помойку.
251 oslokot
 
27.09.12
14:47
(250) да, пора. и комп заодно
252 Miss1C
 
27.09.12
14:49
Проверила на 1С доска с фигурами есть, но ничего не передвигается, как будто картинка
253 oslokot
 
27.09.12
15:48
В IE заместо фигур квадратики
254 Zombi
 
27.09.12
15:58
(249) Хром, все работает.
255 y88
 
27.09.12
16:20
(253) SP3 стоит?
256 expertus
 
27.09.12
16:40
Круто. В таком объеме это что-то.
Проиграл несколько раз, отвлекался, из-за зевков продул. Потом целенаправленно играл, выиграл.
Программа делает идиотские ходы, не продумывает даже на ход вперед.
257 D_Pavel
 
28.09.12
10:59
(253) IE10, всё работает.
Прога писалась изначально под мозиллу, в ней и должно работать.
258 oslokot
 
28.09.12
14:25
(255) (257) разобрался, у меня просто винда кривая. На соседней машине идет нормально
259 DexterMorgan
 
28.09.12
14:30
рокировка не работает
260 DexterMorgan
 
28.09.12
14:30
программа слабая и даже очень
261 mailwood
 
28.09.12
15:04
Поставил мат. Очень слабо играет в эндшпиле.
262 Волшебник
 
28.09.12
15:10
(259) Чё, серьёзно?
263 cobRA
 
28.09.12
15:17
Программа фигня, еле ушла от "детского" мата, но какой ценой... Избиение младенца :))
264 DexterMorgan
 
28.09.12
15:22
(262) и че я тебе лично должен всю тему читать если это писали? или мб нет?
265 DexterMorgan
 
28.09.12
15:23
(261) хаха какой эндшпиль))) она в дебюте ходит а5 или h5)))
266 cobRA
 
28.09.12
15:27
(265) А ты ожидал, что она будет разыгрывать испанскую партию или сицилианскую защиту? :))
267 DexterMorgan
 
28.09.12
15:29
(265) нет, просто удивился как до эндшпиля он дошел если она с дебюта отдает все преимущество
268 cobRA
 
28.09.12
15:32
(267) А чего удивительного? Некоторые вон умудрились ей проиграть и не по одному разу :))
269 Irbis
 
28.09.12
15:50
Даже я тупой 1Сник выиграл, в шахматах только ходы фигур знаю
270 Ночной Эльф
 
28.09.12
15:50
А вы еще попробуйте в qip 2005 отослать этот текст он еще 4 смайлика там в тему нарисует )))
271 NS
 
28.09.12
16:03
Таких маленьких программ достаточно много.
Правда играют слабо.
272 NS
 
28.09.12
16:23
(159) Скоро программы и в шахматы будут играть на рандоме - как в ГО и Symple :)
Уже во многие игры сильнейшие программы на mcts
273 opty
 
28.09.12
16:25
(272) Наконец то ты пришел , тебя здесь кроме шуток сильно не хватало .
274 NS
 
28.09.12
16:36
Кто искал правила в программе - их там конечно нет. Там есть генератор ходов.
Вообще macromax играет в силу вторго-первого разряда. Полностью по правилам, при коде в 1433 символа.
http://home.hccnet.nl/h.g.muller/umax1_6.c
275 NS
 
28.09.12
16:38
http://home.hccnet.nl/h.g.muller/progress.html
1752 символа - даже хеш-таблица есть.
276 opty
 
28.09.12
16:46
(274) Это у него один из самых быстрых генераторов ходов в мире ?
Воде на движкофоруме обсуждали
277 NS
 
28.09.12
16:48
(276) Нет, у него отдельно быстрый генератор (на самом деле быстрый perft), и отдельно самая маленькая программа.
278 NS
 
28.09.12
16:49
(276) Не так вопрос прочитал. Да, у него. Хотя тут пробовали на каспаровчесс пописать быстрые генераторы - его скорость достижима, но его генератор для нормальной программы не пригоден.
279 opty
 
28.09.12
16:51
(278) Понял .
Ага припоминаю , что генератор обсуждали отдельно
280 Fedot200
 
02.10.12
12:53
Провел Королеву с первого раза, далее не стал играть. Очень легко обыграть, особенно если идти на жесткие размены.
281 VitaliyTokarev
 
02.10.12
14:29
http://img.pixs.ru/storage/1/5/8/chessjpg_3115065_5924158.jpg
Играл полностью расслабившись, провёл 3 ферзя, менял их потом на всё подряд )))
Да, (280), размены он делает тупо...
282 VitaliyTokarev
 
02.10.12
14:31
Ещё он любит туда-сюда по 50 раз тыкать фигурами...
Ставит шах, ушёл, ещё раз поставил, вернулся назад и он зацикливается...
Пока я не придумаю другой ход.
283 Fedot200
 
02.10.12
15:03
Ветка навеяла мысль - может устроить турнир по шахматам среди 1С-ников? или было уже такое?
284 Волшебник
 
02.10.12
15:04
(282) Это он играет на ничью путём троекратного повторения позиции.
285 DJ Anthon
 
02.10.12
15:10
(283) причем играть не мозгами а написанными программами на 1С
286 Fedot200
 
02.10.12
15:13
(285) Да можно и мозгами и за румкой/кружкой напитка, только за  реальной доской, а то через нет всегда существует вариант чессмастера.
287 DJ Anthon
 
02.10.12
15:16
(286) вот именно, поэтому удаленно можно только скриптами соревноваться, мы же все-таки программисты, а не кто-нибудь. использовать какой-нибудь сервачок с закрытым доступом и наблюдать, как скрипты шпилятся, по типу гугл контестов
288 DJ Anthon
 
02.10.12
15:27
честно говоря, аж захотелось такой создать )
289 NS
 
02.10.12
15:42
(287) Куча таких серваков, если напишешь шахматную программу - она без твоего участия будет играть в сотне турниров.
290 DJ Anthon
 
02.10.12
16:28
(289) на 1С?
291 DJ Anthon
 
02.10.12
16:29
на других-то языках ясен пень таких полно
292 NS
 
02.10.12
16:29
(290)Нафига писать шахматную программу на 1С?
Нормальному человеку такое в голову не придет.
293 opty
 
02.10.12
16:32
(292) :))
294 DJ Anthon
 
02.10.12
16:35
(292) дак а я не нормальный
295 NS
 
02.10.12
16:38
(291) Ну не полно. Российских скорей всего меньше тридцати.
Winboard/uci движков - вроде 22. Лет пять назад было намного меньше. Меньше десяти.
296 Lama12
 
02.10.12
16:47
Интересный вариант :)
Играет правда рандомно, но немного считает.
297 opty
 
02.10.12
16:47
(295) По данным sdchess 22 движка но там только свободно распространяемые .
ChessAlex там например нет (продавался вместе со нативной оболочкой)
Но не суть , трех десятков не наберется
298 Плот
 
02.10.12
16:48
(0) Я в ничью сыграл
299 NS
 
02.10.12
16:51
(297) А разве Marginal - это не ChessAlex?
300 NS
 
02.10.12
16:51
Да, Marginal это ChessAlex, так что есть он в списке.
301 opty
 
02.10.12
16:54
(299) Автор тот же , но вообще то по заявлению автора , с ChessAlex он ничего общего не имеет , с чистого листа писался . И играет заметно слабее чем более ранний ChessAlex
302 opty
 
02.10.12
16:56
+(301) Например FreeChess и Uralochka в таблице это разные движки , а автор один и тот же
303 NS
 
02.10.12
16:56
(301) Проще считать авторов, а не программы. Так как у каждого автора в любом случае куча версий.
304 NS
 
02.10.12
16:57
(302) Значит 21 движок :)
305 opty
 
02.10.12
17:01
(304) Ну значит 21 автор :)
306 Плот
 
02.10.12
17:17
Победил со второго раза. Я чайник в шахматах. ИМХО алгоритм там не очень сложный.
307 NS
 
02.10.12
17:26
(306) В смысле "сложный"?
308 Stagor
 
03.10.12
10:43
КАК локально запустить? У меня код браузер не открывает!
309 Sensodin
 
03.10.12
13:36
(308) см (4)
310 Stagor
 
04.10.12
10:32
кто-нить на 1С шахматы уже перевел?
311 Lama12
 
04.10.12
10:38
(310) NS - давно.
И на 7.7 есть, и на 8.0.
Все думал сделать из них самообучающиеся и привязать к оценке хода оценку по прошлой статистике.
Руки не доходят. Скорее всего не сделаю.
Кстати, можно взять движок за основу и сделать нормальную базу данных шахматную.
Если поколупаться, то можно и внешние движки прикрутить.
312 NS
 
04.10.12
11:23
(310) Почему "перевел"? С нуля всё написано.
313 Stagor
 
04.10.12
11:31
(312) я про программу в (0) её алгоритм на 1С уже перевели?
314 NS
 
04.10.12
11:32
(313) Нафига?
315 Zombi
 
04.10.12
11:34
(314) Наверно чтобы любой жадный и тупой(типа меня) мог увидеть, насколько элементарный код у этой программы.
316 Stagor
 
04.10.12
11:39
(315) :) или любой крутой 1С-ник, смог хвастануть, что понял ту программу и написал её на 1С со смысловыми именами.

Программа хоть и короткая - абсолютно нечитабильна.
Кто её сможет рефакторить?
317 Zombi
 
04.10.12
11:41
(316) А еще можно поправить код, всех пешек себе заменить на ферзей и глумиться над противником.
318 NS
 
04.10.12
12:03
(316) Зачем? Есть простые и читабельные шахматные исходники.
Тот-же MicroMax прокомментирован. Правда это не простой, а тоже рекордный по размеру исходник.
319 Сергей Д
 
11.10.12
11:18
Че-то у меня без картинок...
320 rcs
 
11.10.12
13:08
Вот мой мат, выиграл с 1-го раза. В шахматы уже очень давно не играл.
http://i45.fastpic.ru/big/2012/1011/7b/39ec48daf6e29fed91cb348175e94e7b.jpg
321 miklenew
 
11.10.12
16:42
(6) Взятие пешки на проходе не работет
322 КонецЦикла
 
11.10.12
17:15
(321) А ракировка? Работает?
323 sda553
 
12.10.12
16:05
(316) Я могу взяться, если кто оплатит. Мне лень на расшифровку время тратить, но расшифровать я это дело 100% способен.
324 DJ Anthon
 
12.10.12
18:59
да ладно???
325 ТочноеЯдро
 
13.10.12
23:38
(323, 324) дежавю или мне показалось ? :)
326 HeroShima
 
17.10.12
01:39
Нарыл на просторах:
Универсальный Hello World! на C, C++, Haskell, Ruby, Python, Perl(x2), HTML, tcl, zsh, make, bash и brainfuck

# /* [  <!-- */ include  <stdio.h> /*   \
 #{\
`""""true \\#{"\n#"};           \
 \
if [ -n "$ZSH_VERSION" ]; then           \
 \
 echo exec  echo I\'m a zsh script.; \
 \
elif [ -n "$BASH_VERSION" ]; then        \
 \
 echo exec  echo I\'m a bash script.; \
else  \
 echo exec  echo  I\'m  a sh  script.;    \
fi`;  #\
BEGIN{print"I'm a ", 0 ? "Ruby"  :"Perl",  " program.\n";  exit; }
 #\
%q~            

set dummy =0; puts [list "I'm"  "a"  "tcl"  "script."]; exit  

all: ; @echo "I'm a Makefile."          \
 #*/
/*: */ enum {a, b};            \
 \
static int c99(void) {        

#ifndef __cplusplus /* bah */        

unused1: if ((enum {b, a})0)          \
 (void)0;
#endif          

unused2:  return a;     \
}  \
static int trigraphs(void) {         \
 \
 return sizeof  "??!"  ==  2;    \
}  \
char X;               \
 \
int main(void) {             \
 \
 struct X  {        \
 \
    char  a[2];    \
 };\
 if (sizeof(X)  !=  1) {       \
 \
printf("I'm a C++ program (trigraphs %sabled).\n",         \
 \
  trigraphs()  ? "en"  : "dis");\
 \
}else if (1//**/2


)unused3 : { ; \
   printf("I'm a C program (C%s, trigraphs %sabled).\n", \
       c99() ? "89 with // comments" : "99", \
       trigraphs() ? "en" : "dis"); \
 } else { \
   printf("I'm a C program (C89, trigraphs %sabled).\n", \
       trigraphs() ? "en" : "dis"); \
 } \
 return 0; \
} /*
# \
> main :: IO () -- -- \
> main = putStr "I'm a Literate Haskell program.\n"
# \
]>++++++++[<+++++++++>-]<+.>>++++[<++++++++++>-]<-.[-]>++++++++++ \
[<+++++++++++>-]<-.>>++++[<++++++++>-]<.>>++++++++++[<++++++++++> \
-]<- - -.<.>+.->>++++++++++[<+++++++++++>-]<++++.<.>>>++++++++++[ \
<++++++++++>-]<+++++.<<<<+.->>>>- - -.<+++.- - -<++.- ->>>>>+++++ \
+++++[<+++++++++++>-]<- - -.<<<<<.<+++.>>>.<<<-.- ->>>>+.<.<.<<.> \
++++++++++++++.[-]++++++++++"""`
# \
print "I'm a Python program."; """[-][--><html><head>
<!--:--><title>I'm a HTML page</title></head><body>
<!--:--><h1>I'm a <marquee><blink>horrible HTML</blink></marquee> page</h1>
<!--:--><script language="Javascript">
<!--: # \
setTimeout( // \
 function () { // \
  document.body.innerHTML = "<h1>I'm a javascript-generated HTML page</h1>"; // \
 }, 10000); // \
//-->
</script><!--: \
</body></html><!-- } # \
say "I'm a Perl6 program", try { " ($?PUGS_VERSION)" } // "", "."; # """ # */
#define FOO ]-->~
327 IVIuXa
 
17.10.12
02:22
(0)
мдя сразу видно прогер
не то что некоторые...
328 zakidonoff
 
25.10.12
01:18
Если кому интересно как это работает...

<table><tbody><tr><th width="60" height="60" onclick="I[b=21]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=22]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=23]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=24]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=25]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=26]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=27]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=28]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=31]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=32]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=33]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=34]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=35]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=36]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=37]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=38]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=41]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=42]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=43]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=44]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=45]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=46]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=47]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=48]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th></tr><tr><th width="60" height="60" onclick="I[b=51]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=52]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=53]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=54]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=55]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=56]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=57]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=58]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th></tr><tr><th width="60" height="60" onclick="I[b=61]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=62]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=63]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=64]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=65]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=66]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=67]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=68]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th></tr><tr><th width="60" height="60" onclick="I[b=71]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=72]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=73]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=74]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=75]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=76]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=77]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">&nbsp;</th><th width="60" height="60" onclick="I[b=78]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">&nbsp;</th></tr><tr><th width="60" height="60" onclick="I[b=81]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=82]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=83]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=84]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=85]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#d0f0e0">?</th><th width="60" height="60" onclick="I[b=86]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=87]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=88]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th></tr><tr><th width="60" height="60" onclick="I[b=91]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=92]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=93]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=94]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=95]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=96]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th><th width="60" height="60" onclick="I[b=97]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#10f0e0">?</th><th width="60" height="60" onclick="I[b=98]&gt;8?W():X(0,0,1)" style="font-size:50px" bgcolor="#90f0e0">?</th></tr><tr></tr></tbody></table>

Это интерпретация кода из хмл5
Оптимизация не за счёт библиотек, а за счёт встроенных функций современных браузеров.
Пы.Сы. на старых компах работать не будет.
Не думаю, что автор писал это ручками - скорее всего просто использовал компилятор =)
329 zakidonoff
 
25.10.12
01:21
(328) *HTML5. Точнее, одного из его элементов
wiki:Canvas_(HTML)
330 badboychik
 
02.11.12
17:42
этот код сжат упаковщиком яваскрипта
331 HeroShima
 
02.11.12
17:44
(330) алилуйя! )
332 badboychik
 
02.11.12
17:52
такая обфускация-упаковка даже для защиты семерошных конф использовалась
333 HeroShima
 
02.11.12
17:54
Оно то конечно да, но (50) всё равно не много.
334 HeroShima
 
02.11.12
18:08
Кстати, видел на хабре статейку про передачу пожатого яваскрипта в имиджах.
335 ВалераОшкин
 
02.11.12
18:17
(50)(0) Скопировал код, вставил в пустой файл блокнота. Файлу дал расширение html.
Не работает, открывается пустое окно.
336 badboychik
 
02.11.12
23:35
337 Нева
 
02.11.12
23:47
(336)
)))))))))))))
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший