рдХрд┐рд╕реА рднреА рдмрдбрд╝реА рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдкреАрдЫреЗ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕реВрдЪрдирд╛ рдкреНрд░рдгрд╛рд▓реА рдФрд░ рд╡рд╕реНрддреБрдУрдВ рдпрд╛ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдмреЗрдЪрдиреЗ рд╡рд╛рд▓реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЬрд┐рддрдиреА рдмрдбрд╝реА рд╣реЛрдЧреА, рд╕рд╛рдЗрдЯ рдХрд╛ рддрд░реНрдХ рдЙрддрдирд╛ рд╣реА рдЬрдЯрд┐рд▓ рд╣реЛрдЧрд╛ рдФрд░ рдЗрд╕рдХрд╛ рдмреЛрдЭ рдЙрддрдирд╛ рд╣реА рдЕрдзрд┐рдХ рд╣реЛрдЧрд╛ред рд╕рд╛рдЗрдЯ рдХреА "рд╢рдХреНрддрд┐" рдмрдврд╝рд╛рдиреЗ рдФрд░ рдкреГрд╖реНрдареЛрдВ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рд╣реИрдВред рдРрд╕реЗ рд╕рд┐рд╕реНрдЯрдо рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рд╣рд░ рд╡реНрдпрдХреНрддрд┐ рдХреА рддрд░рд╣, рд╣рдо рд╕рдордп-рд╕рдордп рдкрд░ рд╣рдорд╛рд░реА
рд╕рд╛рдЗрдЯ рдХреА рдЧрддрд┐ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рд╕рддреНрд░ рдЖрдпреЛрдЬрд┐рдд рдХрд░рддреЗ
рд╣реИрдВ ред рд╣рдо рд╣рд░ рдЙрд╕ рдЪреАрдЬ рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рд╕ рддрдХ рд╣рдо рдкрд╣реБрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЪрд░рдг рдореЗрдВ, рд╡реЗ HTML рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рдХреА рдЧрддрд┐ рдореЗрдВ рднрд╛рдЧ рдЧрдП, рдЬреЛ рддреБрд░рдВрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ "рдлреИрд▓рд╛рдирд╛" рд╣реИред
рд╕рдмрдкреИрдЯрд░реНрди рдХреЗ
рдХреИрд╢рд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреБрдЫ рдирд┐рдЪреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди, рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рдХрд╛ рдХрд╛рд░реНрдп рд╕рдордп рдЕрднреА рднреА рдкреГрд╖реНрда рдкреАрдврд╝реА рдХреА рдЧрддрд┐ рдореЗрдВ рдЖрдзрд╛рд░рд╢рд┐рд▓рд╛ рдмрдирд╛ рд░рд╣рд╛ред рдЕрдзрд┐рдХ рдХрдЯреНрдЯрд░рдкрдВрдереА рдЙрдкрд╛рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рд╢рд╛рдпрдж рдЕрдиреНрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рднреА ...
рд╕рдмрд╕реЗ рддреЗрдЬ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рдХреЗ
рдкрд╡рд┐рддреНрд░ рдХрдВрдШреА рдмрдирд╛рдиреЗрд╡рд╛рд▓реЗ рдХреА рд░реЗрддреА рдХреА рдЦреЛрдЬ рдХреЗ рдХрдард┐рди рдХрд╛рд░реНрдп рдореЗрдВ рд╣рдорд╛рд░реА рдкрд╣рд▓ рдХреЗ рдЗрддрд┐рд╣рд╛рд╕ рдкрд░, рджрд┐рдорд┐рддреНрд░реА рдХрд╛рд░рд╕рд┐рдХ рджреНрд╡рд╛рд░рд╛ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдиреАрдЪреЗ рдкрдврд╝реЗрдВ, рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдереЗ:
тАЬрдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЕрдм рд╣рд░ рдХреЛрдИ рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред рд╣рд░ рдХреЛрдИ рдЪрдпрдирд┐рдд рдЯреВрд▓ рдХреА рдЕрдкреВрд░реНрдгрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╕рдо рдЦрд╛рддрд╛ рд╣реИред рдЖрдЦрд┐рд░рдХрд╛рд░, рдПрдХ рдЕрдиреНрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рдХреЗ рд▓рд┐рдП рдПрдХ рд╢рд╛рдЦрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдкреНрд░рд╡рд╛рд╕ рдПрдХ рдмрд╣реБрдд рд╣реА рдореБрд╢реНрдХрд┐рд▓ рдорд╛рдорд▓рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдЕрдзрд┐рдХ рдмрд╛рд░ рд▓реЛрдЧ рдореМрдЬреВрджрд╛ рдкреИрдХреЗрдЬ рдореЗрдВ рдХреБрдЫ рдЦрддреНрдо рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ рдПрдХ рдЕрдЬреНрдЮрд╛рдд рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ред
рдЯреЗрдореНрдкреНрд▓реЗрдЯ :: рдЯреВрд▓рдХрд┐рдЯ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рдЕрдкрдиреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреА рдЧрддрд┐ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд░рдЬрд┐рд╕реНрдЯреНрд░рд╛рд░ REG.RU рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдФрд░ рдореБрдЭреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрджреЗрд╢ рджрд┐рдпрд╛ред рдореБрдЭреЗ рд╕реБрдЦрдж рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рд╕рдВрднрд╡ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рд╡рд╛рд▓реА рдХрдВрдкрдиреА рдХреЗ рднреАрддрд░ рдХреЗ рд▓реЛрдЧреЛрдВ рдиреЗ, рдЯреЗрдореНрдкрд▓реЗрдЯ :: рдЯреВрд▓рдХрд┐рдЯ (рдЗрд╕рдХреЗ рдмрд╛рдж рдЯреАрдЯреА) рдХреЗ рдкреВрд░реНрдг рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рддреЗ рд╣реБрдП, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди,
рдЯреЗрдХреНрд╕реНрдЯ :: Xslate рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред
рдореИрдВрдиреЗ Xslate рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕рдХрд╛ рдХреЛрдИ рдХрд╛рд░реЛрдмрд╛рд░ рдирд╣реАрдВ рдерд╛ред рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдмрддрд╛рдП рдЧрдП рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХреЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╡рд╣ рдЯреАрдЯреА рдХреЛ 158 рдмрд╛рд░ рдкрдЫрд╛рдбрд╝ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЕрдЧрд░ "рдЙрд╕рдиреЗ рдЬреЛ рдХрд╣рд╛, рдЙрд╕рдореЗрдВ рд╕реЗ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЖрдзрд╛ рд╕рдЪ рд╣реИ" (рд╕реА), рддреЛ рдпрд╣ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рд╡рд┐рдХрд▓реНрдк рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред рдФрд░ рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ рдмрд╣реБрдд рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рдерд╛ - рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реА рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рдереА, рдФрд░ рдХрдо рд╕реЗ рдХрдо рдпрд╣ рдореЛрддреА рд╕реЗ рднреА рддреЗрдЬ рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, Xslate рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ TT рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдХреЛрдб рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдореБрдЭреЗ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ рд╕рдм рдХреБрдЫ "рдареАрдХ рд╣реИ" - рдХреЛрдИ рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ, рд╢рд╛рдпрдж рдЗрд╕рд▓рд┐рдП рдХрд┐ рд▓реЗрдЦрдХ рдиреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдЬреЛ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рд╕рдВрдХреЗрдд рдЫреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдПрдХреНрд╕рд╕реНрд▓реЗрдЯ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦреЗрдВрдЧреЗ (рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдирд┐рдордВрддреНрд░рдг)ред рдпрд╣ рд╕рдм рдХрд╛рдлреА рдЖрд╢рд╛рдЬрдирдХ рд▓рдЧ рд░рд╣рд╛ рдерд╛, рдФрд░ рдореИрдВрдиреЗ Xslate рдХреЛ рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдХрд┐ рдпрд╣ рдЧреНрд░рд╛рд╣рдХ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдпрд╛ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ TT рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдЧрд╛, рдЬреЛ REG.RU рдФрд░ рдореИрдВ рдЦреБрд╢реА рд╕реЗ рд╕рд╣рдордд рдереЗред рд╕рдм рдХреБрдЫ рд▓рд╛рднрдХрд╛рд░реА рдкреНрд░рддреАрдд рд╣реЛ рд░рд╣рд╛ рдерд╛ - рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдХреЛрдб 158 рдЧреБрдирд╛ рддреЗрдЬреА рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛, Xslate рдХреЛ рдмреЗрд╣рддрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдФрд░ рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдВрдЧреЗ, рд╕рдореБрджрд╛рдп рдХреЛ TT2 рдХрд╛ рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛, рдФрд░ рдореИрдВ, рддрджрдиреБрд╕рд╛рд░, рд▓рд╛рдн рдФрд░ рдПрдХ рдЯреЛрдкреА рдореЗрдВ рдПрдХ рдХрд▓рдо рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ред
рд╕рдорд╕реНрдпрд╛рдПрдВ рд▓рдЧрднрдЧ рддреБрд░рдВрдд рд╢реБрд░реВ рд╣реБрдИрдВред Xslate Goro Fuji (alas, alas) рдХреЗ рд▓реЗрдЦрдХ рдиреЗ рдпрд╛ рддреЛ рдкрддреНрд░ рдпрд╛ IRC рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджрд┐рдпрд╛ред рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рд╕рд╣рдордд рд╣реЛрдиреЗ рдХрд╛ рдореЗрд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡, рддрд╛рдХрд┐ рдпрд╣ рд▓реЗрдЦрдХ рдХреЗ рдЗрд░рд╛рджреЗ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реЛ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ рд╣реИред рд╢рд╛рдпрдж рдореЗрд░реЗ рдкрддреНрд░ рдХреЛ рдЬрд╛рдкрд╛рдиреА рд╢рд┐рд╖реНрдЯрд╛рдЪрд╛рд░ рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдореИрдВ рд╕рдореНрдореЗрд▓рдиреЛрдВ рдореЗрдВ рдЬрд╛рдкрд╛рди рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реЛрдВ рд╕реЗ рдореБрдарднреЗрдбрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реБрдЖ рдерд╛, рдФрд░ рдЕрдЧрд░ рдореИрдВ рдСрди-рдХреЙрд▓ рд╕реНрдорд╛рдЗрд▓реНрд╕ рдФрд░ "рд╣реИрд▓реЛ-рд╣реИрд▓реЛ" рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЬреАрд╡рдВрдд рд╕рдВрдкрд░реНрдХ рдореЗрдВ рд░рд╣рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛, рддреЛ рдСрдирд▓рд╛рдЗрди рд╢рд╛рдпрдж рдЕрднреА рднреА рдЕрдзрд┐рдХ рдХрдард┐рди рд╣реИред
рдареАрдХ рд╣реИ, рдореИрдВрдиреЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╕реЛрдЪрд╛ред рдЖрдЦрд┐рд░рдХрд╛рд░, рдЖрд░рдЯреАрдПрдлрдПрд╕ рдордВрддреНрд░ рдХрднреА рднреА рд╡рд┐рдлрд▓ рдирд╣реАрдВ рд╣реБрдЖред рдпрджрд┐ рдХреЛрдб рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓рд╛ рд╣реИ, рддреЛ рдЖрдк рд╣рдореЗрд╢рд╛ рдПрдХ рдкреИрдЪ рдпрд╛ рдХрд╛рдВрдЯрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рд▓реЗрдЦрдХ рд╕рд╣рдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реЛред рдЕрдВрдд рдореЗрдВ, рдореИрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХрд╛ рджрд┐рдЦрд╛рд╡рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рдХрд┐ Xslate рдХреЛ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХреИрд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХреЗ рдЕрддреНрдпрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рд┐рдд рдЗрдВрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИред
рдФрд░ рдореИрдВрдиреЗ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ред рдирд┐рд╖реНрдкрдХреНрд╖рддрд╛ рдореЗрдВ, рдпрд╣ рдХрд╣рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдХреЛрдб рдФрд░ рдПрдХреНрд╕рд╕реНрд▓реЗрдЯ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рджреЛрдиреЛрдВ рдорд╣рд╛рди рд╣реИрдВред рдЫрд╛рддреНрд░реЛрдВ рдХреЛ рдЙрдирдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЕрдиреБрднрд╡ рд╡рд╛рд▓реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рднреА рджреЗрдЦрдиреЗ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд░реЗрдВрдЧреЗред Xslate рдХреЛ рдЗрд╕ рддрдереНрдп рдХреЗ рдЗрд░реНрдж-рдЧрд┐рд░реНрдж рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЯреЗрдореНрдкреНрд▓реЗрдЯрд┐рдВрдЧ рдЗрдВрдЬрди рдореВрд▓ рд░реВрдк рд╕реЗ рдкрд╛рда рдХреЗ рдЖрдЧреЗ-рдкреАрдЫреЗ рдШреВрдорддрд╛ рд╣реИ, рдФрд░ рдЕрдиреБрдХреВрд▓рди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрд╕ рд╕реНрддрд░ рдкрд░ рд╢реБрд░реВ рд╣реБрдЖ рдерд╛ - рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдореЛрддреА рдЬреМ рдХреЗ рд╕рдВрдШрдирди рдХреА рдЬрдЧрд╣
$ a! = $ b
рд╕реА рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдПрдХ рд╣реА рдПрдирд╛рд▓реЙрдЧ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рд╣рд▓реНрдХрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рднреА рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕реА рдореЗрдВ рднреА рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ: рдЯреЗрдореНрдкрд▓реЗрдЯ рдЗрдВрдЬрди рдХреЗ рдкрд░рдорд╛рдгреБ рд╕рдВрдЪрд╛рд▓рди (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреАрдЯреА рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЙрдкрд░реЛрдХреНрдд рд╕рдВрдХреНрд╖реЗрдкрдг рдпрд╛ рд╕рдВрдЪрд╛рд▓рди рдЬреИрд╕реЗ [% IF%], [% CALL%], рдЖрджрд┐) рдХреЗрд╡рд▓ C рдореЗрдВ рдирд╣реАрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдЙрд╕ рдкрд░ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рд▓реВрдк рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдореЛрддреА рд╕реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ (рднрд▓реЗ рд╣реА рд╕реА рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реЛ) рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдШрдбрд╝реА рдЪрдХреНрд░ рдХреЛ рдмрдЪрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ - рдФрд░ рдпрд╣ рдХрд╛рдлреА рдорд╣рдВрдЧрд╛ рдСрдкрд░реЗрд╢рди рд╣реИред рдпрд╣ рдЪрд╛рд▓ рд╕рдВрднрд╡ рд╣реЛ рдЧрдИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдЬреЛ рдмрд╣реБрдд рдЖрдо рд▓рдЧ рд░рд╣рд╛ рд╣реИ, рдЬреИрд╕реЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЯреАрдЯреА рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ
[% рдЕрдЧрд░ рдПрдХ%]
рдкрд╛рда рдП
[% ELSE%]
рдкрд╛рда b
[% END%]
Xslate рдкреНрд░рдкрддреНрд░ рдХреЗ рдЫрджреНрдо-рдХреЛрдбрд╛рдВрддрд░рдХ рдЖрджреЗрд╢реЛрдВ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рддрд╛ рд╣реИ
.if a
.рд▓рд┐рдЯрд░рд▓ "рдЯреЗрдХреНрд╕реНрдЯ рдП"
.рдкреНрд░рд┐рдВрдЯ # 1
.рдЧреЛрддреЛ рей
.рд▓рд┐рдЯрд░рд▓ "рдЯреЗрдХреНрд╕реНрдЯ рдмреА"
.рдкреНрд░рд┐рдВрдЯ # 2
.end
рдФрд░ рдлрд┐рд░ рдПрдХ рдмрд╛рдЗрдирд░реА рд╕рдВрдХрд▓рд┐рдд рдлрд╝рд╛рдЗрд▓ рдореЗрдВред рдЯреАрдЯреА рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЬреЛ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХреЛ рднреА рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореЛрддреА рдХреЛрдб рдореЗрдВ, рдЬреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
рд╕рд╛рдБрдЪрд╛ :: рджрд╕реНрддрд╛рд╡реЗрдЬрд╝-> рдирдпрд╛ (
рдмреНрд▓реЙрдХ => рдЙрдк {
...
eval {
...
рдЕрдЧрд░ ($ a) {
$ рдЖрдЙрдЯрдкреБрдЯред = "рдЯреЗрдХреНрд╕реНрдЯ рдП";
} {
$ рдЖрдЙрдЯрдкреБрдЯред = "рдЯреЗрдХреНрд╕реНрдЯ рдмреА";
}
...
}
}
)
...
рдФрд░ рдлрд┐рд░ рдирд┐рдпрдорд┐рдд рдирд┐рдХрд╛рд╕реА рдХреЗ рд╕рд╛рде рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рд▓реЗрдХрд┐рди рдпрд╣ рднреА Xslate рд▓реЗрдЦрдХ рдиреЗ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╕реЛрдЪрд╛! рдХреЛрдб рдЬреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд "рдЕрд╕реЗрдВрдмрд▓рд░" рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдПрдХ рд╡реНрдпрдХреНрддрд┐ рд╕реЛрдЪ рднреА рдирд╣реАрдВ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП):
рдХреЗ рд▓рд┐рдП (i = 0; рдореИрдВ <opcodes.length; рдореИрдВ ++) {
opcodes.list [i] .callback ();
}
рдФрд░ рддрдерд╛рдХрдерд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░
рд╕рд┐рд▓рдирд╛ рдХреЛрдб :
LABEL (noop): TXCODE_noop (aTHX_ st); рдЧреЛрдЯреЛ * (st-> pc-> exec_code);
LABEL (Move_to_sb): TXCODE_move_to_sb (aTHX_ st); рдЧреЛрдЯреЛ * (st-> pc-> exec_code);
LABEL (Move_from_sb): TXCODE_move_from_sb (aTHX_ st); рдЧреЛрдЯреЛ * (st-> pc-> exec_code);
LABEL (save_to_lvar): TXCODE_save_to_lvar (aTHX_ st); рдЧреЛрдЯреЛ * (st-> pc-> exec_code);
...
LABEL (рдЕрдВрдд): TXCODE_end (aTHX_ st);
рдЬрд╣рд╛рдВ рдУрдкреЛрдХреЛрдб "рдЕрдВрдд" рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рддрдХ рдЧреЛрдЯреЛ рдХреЗ рдмреАрдЪ рдирд┐рд╖реНрдкрд╛рджрди "рдХреВрджрддрд╛ рд╣реИ"ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЛрдИ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдирд╣реАрдВ рд╣реИрдВ, рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, TXCODE_move_to_sb рдХреЛрдб register.a = register.b рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рдЬреЛ рдкреВрд░реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдмреЙрдбреА рдХреЛ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреИрд╢ рдореЗрдВ рдлрд┐рдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рдпрд╣ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗрд╡рд▓ рд╕рд░рд▓ рд╕реЗ рдорд┐рд▓рдХрд░ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ рдХреНрд░рд┐рдпрд╛рдПрдБ - рд╣рд░ рд╕рдордп рдореЛрддреА рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ)ред
рддреЛрддреЗ рдХреА рддрд░рдл рд╕реЗ рднреА рд╕рдм рдХреБрдЫ рдордиреЛрд░рдВрдЬрдХ рд▓рдЧ рд░рд╣рд╛ рдерд╛ред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореЗрд░реЗ рдкрд╛рд╕ рдореИрдХреЗрдирд┐рдХ рд╣реИрдВ, рдпреЗ рд╕рднреА рдПрд▓рдПрд▓ / рдПрд▓рдЖрд░ / рдПрд▓рдПрдПрд▓рдЖрд░ рдкрд╛рд░реНрд╕рд░ рдХрднреА рднреА рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рдереЗ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд┐рдЪрд╛рд░ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВред TT рдФрд░ Xslate рджреЛрдиреЛрдВ рдЫреЛрдЯреА рд╕реНрд╡рддрдВрддреНрд░ рднрд╛рд╖рд╛рдПрдБ рд╣реИрдВ, рдФрд░ рди рдХреЗрд╡рд▓ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Xslate рдкрд░ рдЖрдк рдЗрд╕ рддрд░рд╣ рд╕реЗ "рдЧреЛрд▓реНрдл" рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
рдирдорд╕реНрдХрд╛рд░, <: $ lang // "рдкрд░реНрд▓":> рджреБрдирд┐рдпрд╛!
рд╣рд╛рд▓рд╛рдБрдХрд┐, TT рдиреЗ Parse :: Yapp рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдкреБрд░рд╛рдиреА рд╕рд┐рджреНрдз рд▓реЗрдХреНрд╕ / yacc рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ред Xslate рдиреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкрд╛рд░реНрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдЬреЛ
рдЯреЙрдк-рдбрд╛рдЙрди рдкрд╛рд░реНрд╕рд░ рдХреА рддрд░рд╣ рдмрдирд╛рдпрд╛
рдЧрдпрд╛ рдерд╛, рдФрд░ рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рдореИрдВ рдпрд╣рд╛рдВ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдКрдВрдЧрд╛, рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдкрд╛рд░реНрд╕рд░ рдХреЗ рд╕рд╛рде рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛ рдореЗрд░реЗ рдЕрдиреБрднрд╡ рд╕реЗ рд╕рдмрд╕реЗ рд╕реБрдЦрдж рдХрд╛рд░реНрдп рдерд╛ред рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рдХреЛрдб рдХреЗ рдХрдИ рд╣рд┐рд╕реНрд╕реЗ Xslate рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╕рднреА рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЖрдо рдереЗ, рдФрд░ рд╣рдореЗрдВ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рднрд╛рдЧреЛрдВ рдореЗрдВ рдЕрд▓рдЧ рдХрд░рдирд╛ рдерд╛ред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдорд╕реНрдпрд╛рдПрдВ рдЕрднреА рддрдХ рдЖрдИ рдереАрдВ, рд░рдирдЯрд╛рдЗрдо рдореЗрдВред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рд░рдирдЯрд╛рдЗрдо рдореЗрдВ Xslate рдореЗрдВ рдХреЗрд╡рд▓ TT [[% CALL%] рдХреЗ рд╕рдорд╛рди рдПрдХ рддрдВрддреНрд░ рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд╕рд╛рде рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЗрд╕рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯрд╛ рдЬрд╛рдП, рдХреБрдЫ рд╣рдлрд╝реНрддреЗ рдХрд╛ рдЦрд╛рд▓реА рд╕рдордп рдЕрдкрдиреЗ рдЫрджреНрдо рдЕрд╕реЗрдВрдмрд▓рд░ рдореЗрдВ рдмрд┐рддрд╛рдирд╛ рдФрд░ рдЙрд╕рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛, рддрд╛рдХрд┐ рдЕрдЪрд╛рдирдХ рдХреБрдЫ рдЯреВрдЯ рди рдЬрд╛рдПред рдпрд╣ рднреА рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЯреАрдЯреА рдореЗрдВ рдЕрд╕рдордорд┐рдд рдХреЛрд╖реНрдардХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, [% - ...%], рдФрд░ Xslate рдкрд╛рд░реНрд╕рд░ рдХреЛ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреИрд╕реЗред рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдмрдбрд╝реА рдареЛрдХрд░ рдпрд╣ рдереА рдХрд┐ TT рдФрд░ Xslate рдореЗрдВ рдмрд╕ рд╡реЗрд░рд┐рдПрдмрд▓ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрд▓рдЧ рд╕реНрдХреЛрдк рджреГрд╢реНрдпрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рдЕрдЧрд░ рдЯреАрдЯреА рдореЗрдВ рдореИрдВ [% foo = 'bar'%] рд▓рд┐рдЦрддрд╛ рд╣реВрдВ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдЪрд░ рдЙрдк-рдЕрдВрдХ рд╕рднреА рдЙрдкрдкрдЯреНрдЯреЛрдВ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рддреЛ Xslate рдореЗрдВ рдпрд╣ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдЪрд░ рд╣реИред
рдпреЗ рд╕рднреА рд╕рдорд╕реНрдпрд╛рдПрдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╣рд▓ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдереАрдВ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рд╕реЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рд╕рдВрддреБрд▓рди рдкрд░ рд╕рд╡рд╛рд▓ рдЦрдбрд╝рд╛ рд╣реЛ рдЧрдпрд╛ рдФрд░ рдкрд░рд┐рдгрд╛рдо - рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдкрд╛рдпрд▓рдЯ рдореВрд▓реНрдпрд╛рдВрдХрди рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдмрджрд▓рд╛рд╡ рдХреЗ рдкреИрдорд╛рдиреЗ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдереЗред рдЧреНрд░рд╛рд╣рдХ рдХреЗ рд╕рд╛рде рдПрдХ рдмреИрдардХ рдХреЗ рдмрд╛рдж, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдХрдВрдкрдиреА рдХреЛ рдХрдо рд╕реЗ рдХрдо рджреЛ рдмрд╛рд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рдереАред рдФрд░ рдореИрдВрдиреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдмрдврд╝рд╛рдирд╛ рдХреИрд╕реЗ рд╕рдВрднрд╡ рд╣реИ, рдФрд░ рдореЛрдЯреЗ рддреМрд░ рдкрд░, "рдореЛрдордмрддреНрддреА рдХреЗ рд▓рд╛рдпрдХ рдЦреЗрд▓ рд╣реИ"ред
рдЗрд╕рдХреЗ рд╕рд╛рде, рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реЛ рдЧрдпрд╛ - рджреЗрд╡рд▓ :: NYTProf, рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдкреНрд░реЛрдлрд╛рдЗрд▓рд░ (рдХрдИ рд╡рд░реНрд╖реЛрдВ рдХреЗ рдмрд╛рдж рджреЗрд╡рд▓ :: рдбреАрдкреНрд░реЛрдлрд╝ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ), рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЛ рдЯреНрд░реЗрд╕ рдХрд░рддреЗ рд╕рдордп рдРрд╕реА рджрд┐рд▓рдЪрд╕реНрдк рддрд╕реНрд╡реАрд░ рддреИрдпрд╛рд░ рдХреА рдЧрдИ:

рддрд╛рд▓рд┐рдХрд╛ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рдкрд╛рдВрдЪ рдЧреБрдирд╛ рд▓рдВрдмреА рдереА, рдФрд░ рдореИрдВрдиреЗ рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд▓рд╛рдЗрдиреЗрдВ рд╣рдЯрд╛ рджреАрдВ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рд╕рд░рд╕рд░реА рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдореБрдЦреНрдп рднрд╛рд░ рдЯреАрдЯреА рдХреЗ рдХрд╛рд░рдг рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИред рдирддреАрдЬрддрди, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ Xslate рдХреЗ рд╕рд╛рде TTs рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЧрддрд┐ рд╢реВрдиреНрдп рд╣реИ, рддреЛ рдпрд╣ рд╡рд╛рдВрдЫрд┐рдд рджреЛ рдЧреБрдирд╛ рд╡реГрджреНрдзрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ред рдлрд┐рд░ рднреА, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЦрд╛рд▓реА рд╣рд╛рде рдкреАрдЫреЗ рди рд╣рдЯрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдЕрдлрд░рд╛-рддрдлрд░реА рдордЪрд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рдпрд╣реА рдореИрдВрдиреЗ рдкрд╛рдпрд╛:
тАв main_menu.inc рдФрд░ index.html рдореЗрдВ, рдореБрдЭреЗ рдПрдХ рдХреЙрд░реНрди рдзреАрдорд╛ рдХреЛрдб рдорд┐рд▓рд╛
[% X%]
[% Y% рдХреЗ рд▓рд┐рдП]
... рдХреБрдЫ рдХрд░реЛ ...
[% END%]
[% END%]
рдЬреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рддреЗрдЬреА рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИред рдЗрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЧрддрд┐ рдХреЛ рджреЛрдЧреБрдирд╛ рдмрдврд╝рд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИред
тАв рдлрд┐рд░ - рдЯреЗрдореНрдкрд▓реЗрдЯ :: рд╕реНрд▓реИрд╢, рдЯреАрдЯреА рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореБрдЦреНрдп рд╕рдВрджрд┐рдЧреНрдз рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рджреГрдврд╝рддрд╛ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдХрд╣реАрдВ рдФрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдирд╣реАрдВ рд╣реИ :: Stash :: XS - рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдПрдХ рд╕рдордп рдореЗрдВ рдЗрд╕рдХреА рдЧрддрд┐ рднреА рдХрд┐рд╕реА рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рддреА рд╣реИред рдлрд┐рд░ рднреА, рдпрд╣ рдореЛрддреА рдЬреМ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдерд╛ рдЬреЛ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдерд╛, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдереЛрдбрд╝рд╛-рдереЛрдбрд╝рд╛ рдХрд╛рдЯрдХрд░ 356ms рд╕реЗ рдШрдЯрд╛рдХрд░ 238ms рдХрд░ рджрд┐рдпрд╛ред рдПрдХрдорд╛рддреНрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдореЗрд░рд╛ "рдХрдЯ" рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЗрд╕ рдЧреНрд░рд╛рд╣рдХ рдХреЗ рд▓рд┐рдП рдФрд░ рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдЪ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЖрдк рд╕реНрдерд╛рдиреАрдп рд╣реИрдХ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ рдХреЛ рдЗрд╕реЗ рд╣рд░ рдмрд╛рд░ рд▓рдЧрд╛рдирд╛ рд╣реЛрдЧрд╛ред рд╕рдВрджрд┐рдЧреНрдз рд▓рд╛рдн рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреМрди рдкрд░рд╡рд╛рд╣ рдХрд░рддрд╛ рд╣реИ, рдпрд╣рд╛рдБ рдпрд╣ рд╣реИ:
--- рдЯреЗрдореНрдкреНрд▓реЗрдЯ-рдЯреВрд▓рдХрд┐рдЯ -реи.реирек / xs / Stash.xs.0 реирежрезреи-резрез-реиреп реиреж:реирем: релрек.рем4режрекрем--kitрелрежреж
+++ рдЯреЗрдореНрдкреНрд▓реЗрдЯ-рдЯреВрд▓рдХрд┐рдЯ 2.24 / xs / Stash.xs 2012-11-22 23:26: 39.406594300_0100
@@ -1198.21 +1198.7 @@
}
рдЕрдЧрд░ (! Svok (RETVAL)) {
- рдбреАрдПрд╕рдкреА;
- рдПрдВрдЯрд░;
- SAVETMPS;
- рдкреБрд╢реНрдХрд░реНрдХ (рдПрд╕рдкреА);
- рдПрдХреНрд╕рдкреАрдпреВрдПрдЪрдПрд╕ (рд░реВрдЯ);
- XPUSHs (рдкрд╣рдЪрд╛рди);
- рдкреБрдЯрдмреИрдХ;
- n = call_method ("рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд", G_SCALAR);
- рд╕реНрдкрд╛рдЧрди;
- рдЕрдЧрд░ (n! = 1)
- рдХреНрд░реЛрдХ ("рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд () рдиреЗ рдПрдХ рднреА рдорд╛рди рдирд╣реАрдВ рд▓реМрдЯрд╛рдпрд╛ \ n");
- RETVAL = SvREFCNT_inc (POPs);
- рдкреБрдЯрдмреИрдХ;
- FREETMPS;
- рд▓реЗрд╡;
+ RETVAL = newSVpv ("", 0);
}
рдЕрдиреНрдпрдерд╛
рдореЛрдЯреЗ рддреМрд░ рдкрд░, рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреЙрд▓ рдХрд░рдирд╛ рдмрд╣реБрдд рдорд╣рдВрдЧрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдмрд╕ рдПрдХ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди, рдЕрдЧрд░ рдпрд╣ 60 рд╣рдЬрд╛рд░ рдХреЙрд▓ рд╣реЛрдЧрд╛, рддреЛ рд╕рдордп рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЦрд░реНрдЪ рдмрдврд╝реЗрдЧрд╛ред
тАв IO :: Uncompress :: * рдФрд░ IO :: Compress :: *, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рдореЗрдордХрд╛рдЯреЗрдб рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ - рдпрд╣ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░рддрд╛ рд╣реИ рдпрджрд┐ рдЗрд╕рдХрд╛ рдЖрдХрд╛рд░ рд╡рд╣рд╛рдВ рдХреБрдЫ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдореЗрдЧрд╛рдмрд╛рдЗрдЯ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЦреЗрд▓рд╛, рд▓реЗрдХрд┐рди рд╕реБрдзрд╛рд░ рд╕реВрдХреНрд╖реНрдо рдерд╛ред
тАв рдЕрдВрдд рдореЗрдВ, рдЯреЗрдореНрдкрд▓реЗрдЯ :: Iterator, 180,660 рдХреЙрд▓ред рдореИрдВрдиреЗ рдЗрд╕реЗ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ XS рдореЗрдВ рдХреЙрдкреА рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ 263 рд╕реЗ рдШрдЯрд╛рдХрд░ 7ms рдХрд░ рджрд┐рдпрд╛, рдЬреЛ рдХреБрд▓ рдЕрдиреБрд░реЛрдз рдХрд╛ 5-7% рд╣реИред рдкрд░рд┐рдгрд╛рдо CPAN рдХреЛ
рдЯреЗрдореНрдкрд▓реЗрдЯ :: Iterator :: XS рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣ рдПрдХрдорд╛рддреНрд░ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬреЛ рд╕рдореБрджрд╛рдп рдХреЛ рд▓рд╛рдн рдкрд╣реБрдВрдЪрд╛ рд╕рдХрддреА рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЯреАрдЯреА рдкрд░ рдПрдХ рдореМрдЬреВрджрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ;
рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: Iterator :: XS;
$ рдЯреЗрдореНрдкреНрд▓реЗрдЯ :: рдХреЙрдиреНрдлрд┐рдЧрд░ :: рдЗрдЯрд░реЗрдЯрд░ = 'рдЯреЗрдореНрдкреНрд▓реЗрдЯ: рдЗрдЯрд░реЗрдЯрд░ :: рдПрдХреНрд╕рдПрд╕ тАЩ;
рдФрд░ рджреЗрдЦреЛ рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рдЖрддрд╛ рд╣реИред
рдкрд░рд┐рдгрд╛рдо рдРрд╕реЗ рдереЗ рдХрд┐ рд╡реЗ рдШрдордВрдб рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдереЗред рдЯреАрдЯреА рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ (рдФрд░ рдХреНрдпрд╛ рдпрд╣ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рд╣реИ рдпрд╛ рдирд╣реАрдВ) рдХрд╛ рд╕рд╡рд╛рд▓ рдЕрднреА рддрдХ рдореЗрд░реЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдПрдХ рдЕрд╕рдВрднрд╡ рдирд┐рд╖реНрдХрд░реНрд╖ рдмрдирд╛рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЯреАрдЯреА рдмрд╣реБрдд рдЦрд░рд╛рдм рд╣реИ - рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЧрддрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рдЪрд░реНрдЪрд╛ рдХрд╛ рд╡рд┐рд╖рдп рд╣реИред
рдЕрдВрдд рдореЗрдВ, рдореИрдВ рджрд┐рд▓рдЪрд╕реНрдк рдХреЛрдб рдореЗрдВ рддрд▓реНрд▓реАрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЦрд╛рдХрд╛ :: Iterator :: XS рдореЙрдбреНрдпреВрд▓ рдХреЗ рдкреНрд░рдХрд╛рд╢рди рдореЗрдВ рджреГрдврд╝рддрд╛ рдХреЗ рд▓рд┐рдП REG.RU рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ - рдЗрд╕ рд▓реЗрдЦ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИ, рдЬреЛ рдореЗрд░реА рдкрд╣рд▓ рдкрд░ рдЬрд╛рд░реА рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рдереАред рдЖрдорддреМрд░ рдкрд░, рдХрдВрдкрдирд┐рдпрд╛рдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЙрд╕ рдХреЛрдб рдХреЛ рд░рдЦрдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рдирд╣реАрдВ рд░рдЦрддреА рд╣реИрдВ рдЬреЛ рдЙрдирдХреЗ рдЖрджреЗрд╢ рдХреЛ рдХрд╣реАрдВ рднреА рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ, REG.RU рдПрдХ рд╕реБрдЦрдж рдЕрдкрд╡рд╛рдж рдерд╛, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдореИрдВ рдореЛрддреА рд╕рдореБрджрд╛рдп рдХреА рдУрд░ рд╕реЗ рдЕрдкрдирд╛ рдЖрднрд╛рд░ рд╡реНрдпрдХреНрдд рдХрд░рддрд╛ рд╣реВрдВред "