[Libfsd-devel] cvs update
Status: Planning
Brought to you by:
vanio
From: Ivan P. <va...@ne...> - 2005-10-07 06:39:17
|
Commitnal sum poslednata mi versija ot vkushti. Edinstvenata po-goljama promjana e che v transitionite (nfa_trans_t) veche ima ne simvoli (nfa_alpha_t), range-ove (nfa_range_t). Suotvetno konstrukcijata e leko promenena (i sushto taka zavurshena -- predi njamashe support za character lists vuv REX parse durvetata). Taka che sega vseki reguljaren izraz kojto se poddurzha ot REX parsera si ima ekvivalenten avtomat. Attachvam kakvo se generira za reguljarnija izraz "[[:alpha:]][[:alnum:]_]*". Rezultatite mislja sa neprilichno dobri. Parsvaneto (na NC-mashinata mi) na tozi reguljaren izraz izjazhda ~20usec, a NFA konstrukcijata po tozi REX ~60usec. Tova oznachava che ima megdan za determinirane i pak shte sme v obozrimi granici. Pametta ne sum ja gledal, no kakto pisah predi, garantirano e che e linejna po reguljarnija izraz ako njama iteracija, i e kvadratichna, kogato ima. |