ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] php's config



On Fri, 21 Jan 2000, Stanislav Malyshev a.k.a Frodo wrote:

> From: Stanislav Malyshev a.k.a Frodo <frodo@sharat.co.il>
> Subject: Re: [apache-talk] php's config
> 
> VW>> Вот ты бы сразу к tcl написал на C приладу, благо это _много_ проще чем
> VW>> XS. Tcl он на это как раз заточен. Tool Command Language, embeddable язык
> 
> На C очень стремно было файл с данными разбирать, там regular expressions
> в полный рост сначала, а потом на результате - суровая процедура match,
> которая была написана в конце концов на C. Я и хотел сначала написать весь
> разбор файла на TCL, потому что TCL там пришлось использовать -- надо

Вот для таких вещей правильно примененный Tcl как раз идеален.

Пишешь первый вариант  на чистом Tcl - тормозит. 
Читаешь man Tcl_CreateCommand и пишешь процедуру match на С.

Проверяешь. Тормозит меньше, но тормозит.

Читаешь man Tcl_CreateObjCommand и переходишь на объектный интерфейс,
передавая в команду объект-список, а не строку. 

Скорости все еще чуть-чуть не хватает.

Читаешь man Tcl_RegExpMatch и убеждаешься что можно весь цикл разбора
переписать на С вместе с regular expression в полный рост.

Начинает работать быстро. 

Обнаруживаешь что данные надо бы читать не из файла а из чего-то более
хитрого. Но поскольку ты их читаешь из Tcl_Channel, обнаруживаешь, что
тебе уже хорошо. Можно, например из postgres-овского блоба читать.
   
> было на нем+Tk GUI ко всему этому делу делать. И написал. И переписал на
> Perl, потому как во-первых, геморройно оказалось на TCL, а во вторых -
> тормозило жестоко.

--------------------------------------------------
Victor Wagner                   vitus@ice.ru
Programmer                      Office:7-(095)-203-50-60
Institute for Commerce          Home: 7-(095)-135-46-61
Engineering                     http://www.ice.ru/~vitus

=============================================================================
=               Apache-Talk@lists.lexa.ru mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =



 




Copyright © Lexa Software, 1996-2009.