10 [ {or %offset 0} {or %num cfg_index_num} '' 'navigator' $ &#
12 [ { [ 0 'offset' % 'or' $ &# } { [ 'cfg_index_num' $ 'num' % 'or' $ &# }
18 MARK, CALL n, CALL m, LITERAL
19 MARK, CALL n, CALL m, LITERAL, LITERAL
20 MARK, CALL n, CALL m, LITERAL, ADDRESS
24 { 'or' { % 'num' & 'cfg_index_num' }}
25 { 'or' { % 'num' " 0}}
28 & 'navigator' 3 & 'or' 2
30 '<div class = navigator>' ?
32 'cfg_index_num' & 'num' % or
40 '<span class = prev>' ?
60 '<span class = next>' ?
78 $0 'cfg_index_topics' $ or
79 3 'stories_by_date' &#
91 304 1 'set_http_status' &#
93 'sid' $ "sid=" . 1 'set_cookie' &#
95 {set_cookie {. "sid=" sid}}
98 {stories_by_date %topic 0 0}
103 { 0 0 'topic' % 3 'stories_by_date' &# } foreach
105 {stories_by_date {or $0 cfg_index_topics} $1 {add $2 $1}
108 {aurl 'STORY' 'topic' $0 'id' $1} ?
115 {aurl 'TOPIC' 'topic' $0}
122 $0 'topic' 'TOPIC' 3 'aurl' &# ?
130 [ $1 'id' $0 'topic' 'TOPIC' 'aurl' &
133 } 'stories_by_date' &
137 aurl('TOPIC', 'topic', $0),
143 '<span class = prev>',
159 size(stories_by_date(or($0, cfg_index_topics), $1, add($2, $1))),
161 '<span class = next',
190 '<span class = next>'
216 $1 $2 add 'offset' $0 'topic' 'INDEX' 't' % or
219 '<span class = next>'
226 'cfg_index_topics' & $0 or
234 aurl('STORY', 'topic', $0, 'id', $1),
241 aurl('STORY', 'id', $0),
249 content_type("application/rss+xml")
251 transfer_encoding("chunked")
254 '<?xml version="1.0" encoding="UTF-8?>',
255 '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">',
264 aurl('STORY', 'id', $0),
272 aurl('TOPIC', 'id', $0),
288 aurl('STORY', 'id', $0),
291 'cmd', 'stories_by_date'
312 [ 'stories_by_date' 'cmd'
313 { [ '</loc></url>' [ $0 'id' 'STORY' 'aurl' & '<url><loc>' out }
317 channel_send(borofd, 'cmd', 'topics')
322 aurl('STORY', 'id', $0),
327 [ 'topics' 'cmd' 'borofd' & channel_send
329 { [ '</loc></url>' [ $0 'id' 'STORY' 'aurl' &] '<url><loc>' out }
330 'borofd' & channel_recv
345 @("Search image by name"),
358 'Search image by name' @
360 'search_image_form' &
368 '</b><br><img src = "http://',
391 'cmd', 'search_image',
395 [ 'query' % 'query' 'search_image' 'cmd' 'borodb' & channel_send
402 '</b><br><img src = "http://',
414 [ { [ '</b><br><img src = "http://' $0 '<p><b>' out } 'borodb' & channel_recv
416 if (eq(HTTP_REQUEST_METHOD, 'GET'),
418 foreach(array, out($0))
421 { [ 'coco' & out { [ $0 out } 'array' & foreach}
422 'HTTP_REQUEST_METHOD' & 'GET' eq if
434 { [ '</a>' $1 '">' $0 '<a href = "' out } 'link' set
442 { [ $0 out [ $1 out [ "---" out } 'link' =
450 [ $0 out [ $1 out [ "---" out 'link' =
461 <{ open('borodb', 'localhost', '1234') cgi_init() }>
466 <{init}><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
467 "http://www.w3.org/TR/REC-html40/loose.dtd">
488 if (story_exists('info', 'index'),
489 story_body('info', 'index'),
506 'cmd', 'story_exists',
527 recv('borodb', return($1))
537 recv('borodb', return($1))
562 cat('<a href = "', $0, '">', $1, '</a>')
565 <a href = "<{$0}>"><{$1}></a>
592 if (ne(HTTP_COOKIE, ''),
594 'cmd', 'user_by_sid',
599 set_logged_user(user)
603 set(etag, cat('"', out_crc16, '"'))
605 if (eq(HTTP_IF_NONE_MATCH, out_crc16),
611 'Cache-Control', 'max-age=300'
616 foreach (http_headers,
617 out($0, ': ', $1, "\n")
628 char *prg = "{[@0?[@1?['---\0?}'link\0=";
634 char *prg2 = "['Triptico\0'http://triptico.com\0\0'link\0&?";
636 /* even variables are programs */
637 char *prg3 = "{'angel\0}'user\0='user&?";
639 char *prg4 = "{['</a>\0$1'">\0$0'<a href = "\0?}'link\0=";
641 [ 'Triptico 'http://triptico.com [ '</a> $1 '"> $0 '<a href = "
643 ?('result is: ', /(10, 2), '!!!')
644 def('link', ~('<a href = "', $0, '">', $1, '"</a>'))
645 def('url', ~('http://', $0))
646 link(url('triptico.com'), 'Triptico')
648 ['!!!\0['2\0'10\0/'Result is: \0?
650 ['Triptico\0['triptico.com\0'url\0&'link\0&
652 {['<a href =\0$0'">\0$1'"</a>\0~}'link\0=
653 {[$0'http://\0~}'url\0=
660 /* i = (i + 1) & 0xff; */
661 =(i, &(+(i, 1), 0xff))
662 /* j = (j + S[i]) & 0xff; */
663 =(j, &(+(j, .(S, i)), 0xff))
664 /* t = S[i]; S[i] = S[j]; S[j] = t; */
665 =(t, .(S, i)) =(.(S, i), .(S, j)) =(.(S, j), t)
666 /* t = (S[i] + S[j]) & 0xff; */
667 =(t, &(+(.(S, i), .(S, j)), 0xff))
673 =(i, and(add(i, 1), 0xff))
674 i = and(add(i, 1), 0xff)
676 ['i\000[['i\000$'1\000+'0xff\000&=Z
677 ['K\000['S\000't\000$.=
679 ['arcfour_byte\000{['i\000[['i\000'1\000+'0xff\000&=Z'S\000't\000$.}=Z
681 =(c,^(get_char(f), arcfour_byte()))
683 ['c\000[['f\000$'get_char\000$&['arcfour_byte\000$&^=Z