Diff for /parser3/www/htdocs/Attic/index.html between versions 1.30 and 1.36

version 1.30, 2002/03/29 10:26:01 version 1.36, 2002/04/16 09:38:51
Line 7  $response:charset[windows-1251] Line 7  $response:charset[windows-1251]
 $response:content-type[$.value[text/html]$.charset[$response:charset]]  $response:content-type[$.value[text/html]$.charset[$response:charset]]
   
 @main[]  @main[]
 ^rolls2[]  #^invaliddate2[]
   #^process2[]
   #^casehashtext[]
   #^subjvaltest[]
   #^tableselect0[]
   #^memnotest1[]
   #^transparams[]
   #^voidparams[]
   #^rolls2[]
 #^cacheexpireschanging[]  #^cacheexpireschanging[]
 #^cacheexpiresfixed[]  #^cacheexpiresfixed[]
 #^dateoffsets[]  #^dateoffsets[]
Line 18  $response:content-type[$.value[text/html Line 26  $response:content-type[$.value[text/html
 #^locate_by_expr[]  #^locate_by_expr[]
 #^method_junction_params{...}  #^method_junction_params{...}
 #^verifyCookie[paf]  #^verifyCookie[paf]
 #^execlangs[]  ^execlangs[]
 #$t[^tobjeresult[]]$t.a  #$t[^tobjeresult[]]$t.a
 #^xmlprobs[]  #^xmlprobs[]
 #^doubleprobs[]  #^doubleprobs[]
Line 116  $response:content-type[$.value[text/html Line 124  $response:content-type[$.value[text/html
 <hr>  <hr>
 OK  OK
   
   @invaliddate2[]
   $d[^date::create(1018946575/60/60)] ^d.sql-string[]
   
   @process2[]
   ^^process{
           ^process{
                   ^$a[^^if(0){^$.k[y]}{^$.k[^^hren[]n]}] ^$a.k
           }
   }
   
   @casehashtext[]
   $tt[1]
   $tmp[
           ^switch[$tt]{
                   ^case[1]{
                           $.aaa[123]
                   }
                   ^case[DEFAULT]{
                           $.bbb[456]
                   }
           }
           shit!
   ]
   #$tmp
   $tmp.aaa
   
   @subjvaltest[]
   $a12[val]
   $b[12]
   $a$b
   
   @tableselect0[]
   $person[^table::create{name     height
   paf     1.77
   шохин   2.07
   moko    1.77
   }]
   $nottoohigh[^person.select($person.height<2)]
   ^nottoohigh.menu{$nottoohigh.name<br>}
   
   @transparams[]
   $idoc[^xdoc::create{<?xml version="1.0" ?><doc/>}]
   $odoc[^idoc.transform[global.xsl;
           $.param1['1']
           $.param2['2']
   ]]
   <pre>^taint[^odoc.string[$.method[html]]]
   
   @memnotest1[]
   ^for[i](0;4000){
   
    $xxxx[$i]
    $xxxx
   
   }
   
   @memnotest1notes[]
   одна итерация цикла:
   [Mon Apr  8 20:12:02 2002] execution-------------------------|
   '469641+=28 wcodeframe -> 0 !optimize[3]''469669+=49 string от {} -> 0 optimize[3]'
   [Mon Apr  8 20:12:02 2002] 12:STRING__WRITE
   [Mon Apr  8 20:12:02 2002]  "|| "
   [Mon Apr  8 20:12:02 2002] 12:WITH_ROOT
   [Mon Apr  8 20:12:02 2002] 13:VALUE
   [Mon Apr  8 20:12:02 2002]  "xxxx" string
   [Mon Apr  8 20:12:02 2002] 14:CREATE_EWPOOL'469377+=24 wcodeframe -> 0 !optimize[1]''469401+=49 string -> 41 !optimize[7]'
   [Mon Apr  8 20:12:02 2002] 16:WITH_READ
   [Mon Apr  8 20:12:02 2002] 17:VALUE
   [Mon Apr  8 20:12:02 2002]  "i" string
   [Mon Apr  8 20:12:02 2002] 18:GET_ELEMENT
   [Mon Apr  8 20:12:02 2002] 17:WRITE_VALUE'469452+=40 MAX_NUMBER -> !~2 actual digits''469492+=49 -> 41 !'
   [Mon Apr  8 20:12:02 2002] 16:REDUCE_EWPOOL'469541+=24 VString -> 0 optimize[5]'
   [Mon Apr  8 20:12:02 2002] 15:CONSTRUCT_VALUE
   [Mon Apr  8 20:12:02 2002] 12:STRING__WRITE
   [Mon Apr  8 20:12:02 2002]  "| "
   [Mon Apr  8 20:12:02 2002] 12:WITH_READ
   [Mon Apr  8 20:12:02 2002] 13:VALUE
   [Mon Apr  8 20:12:02 2002]  "xxxx" string
   [Mon Apr  8 20:12:02 2002] 14:GET_ELEMENT
   [Mon Apr  8 20:12:02 2002] 13:WRITE_VALUE'469573+=41 string expand nothing for now'
   [Mon Apr  8 20:12:02 2002] 12:STRING__WRITE
   [Mon Apr  8 20:12:02 2002]  "||"'469617+=24 VString -> 0 !optimize[6]'
   [Mon Apr  8 20:12:02 2002] <-ja returned
   [Mon Apr  8 20:12:02 2002] ja->
   
   201/328=0.612804878049 %%optimized
   
   1.
   CREATE_*POOL
       сделать
   *POOL_POOLED+CODE
       где
           wwrapper
           и(возможно) wcodeframe
           +string
           стековая переменная
   
   2.
   избавиться от обёртки при возврате результата process [см. тело _for]
   
   3.
   сделать callback для process, чтобы вынести invariants из _for & co.
   
   4.
    @todo склеить get_element и write_value (при вставлении? write_value)
   
   5.
   reduce_*pool -> вариант получить именно string, без VString обёртки [часто
   обёртка сразу выбрасывается = не нужна]
   
   6.
   process вариант получить именно string, без VString обёртки [часто обёртка
   сразу выбрасывается = не нужна]
   
   7.
   string head, убить 8 байт неправильной link
   
   @voidparams[]
   ^voidparamsm[$form:field]
   
   @voidparamsm[p]
   ^p.int(123)
   
 @rolls2[]  @rolls2[]
 $now[^date::now[]]  $now[^date::now[]]
 $d[^date::create($now.year;$now.month)] ^d.sql-string[]<br>  $d[^date::create($now.year;$now.month)] ^d.sql-string[]<br>
Line 234  $t[^table::create{a b Line 365  $t[^table::create{a b
   
 @execlangs[]  @execlangs[]
 $f[^file::exec[test.pl]]  $f[^file::exec[test.pl]]
   err:$f.stderr<br>
 ^process{$f.text}  ^process{$f.text}
 #$c[^t.columns[]]  #$c[^t.columns[]]
 #^c.menu{  #^c.menu{
 #* $c.column<br>  #* $c.column<br>
 #}  #}
 =$t.c=  c:$t.c<br>
   
 @tobjeresult[]  @tobjeresult[]
 ^table::create{a  ^table::create{a

Removed from v.1.30  
changed lines
  Added in v.1.36


E-mail: