рд╢реБрдХреНрд░рд╡рд╛рд░, 2 рдЕрдЧрд╕реНрдд рдХреЛ, C рдФрд░ C++ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд▓реЗрдХреНрд╕рд┐рдХрд▓ рдПрдирд╛рд▓рд╛рдЗрдЬрд╝рд░ рдХрд╛ рдПрдХ рдирд┐рдГрд╢реБрд▓реНрдХ рдЬрдирд░реЗрдЯрд░, re2c рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдПрдХ рдЕрдиреБрд╕реНрдорд╛рд░рдХ рдХреЗ рд░реВрдк рдореЗрдВ, re2c рдХреЛ 1993 рдореЗрдВ рдкреАрдЯрд░ рдмрдореНрдмреЛрд▓рд┐рд╕ рджреНрд╡рд╛рд░рд╛ рдмрд╣реБрдд рддреЗрдЬрд╝ рд▓реЗрдХреНрд╕рд┐рдХрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдХреЛрдВ рдХреЗ рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдЬрдирд░реЗрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдЙрддреНрдкрдиреНрди рдХреЛрдб рдХреА рдЧрддрд┐ рдФрд░ рдПрдХ рдЕрд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд▓рдЪреАрд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рджреНрд╡рд╛рд░рд╛ рдЕрдиреНрдп рдЬрдирд░реЗрдЯрд░реЛрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реИ рдЬреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХреЛрдВ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдФрд░ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдПрдХ рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдореМрдЬреВрджрд╛ рдХреЛрдб рдЖрдзрд╛рд░. рддрдм рд╕реЗ, рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдореБрджрд╛рдп рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХреА рдЧрдИ рд╣реИ рдФрд░ рдФрдкрдЪрд╛рд░рд┐рдХ рд╡реНрдпрд╛рдХрд░рдг рдФрд░ рдкрд░рд┐рдорд┐рдд рд░рд╛рдЬреНрдп рдорд╢реАрдиреЛрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдкреНрд░рдпреЛрдЧреЛрдВ рдФрд░ рдЕрдиреБрд╕рдВрдзрд╛рди рдХреЗ рд▓рд┐рдП рдПрдХ рдордВрдЪ рдмрдиреА рд╣реБрдИ рд╣реИред

рд╕рдВрд╕реНрдХрд░рдг 1.2 рдореЗрдВ рдореБрдЦреНрдп рдирд╡рд╛рдЪрд╛рд░:

  • рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреЗ рдЕрдВрдд рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ (рд╕рд░рд▓реАрдХреГрдд) рддрд░реАрдХрд╛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛
    (рдЕрдВрдЧреНрд░реЗрдЬреА "рдИрдУрдПрдл рдирд┐рдпрдо")ред
    рдЗрд╕рдХреЗ рд▓рд┐рдП, re2c:eof рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ,
    рдЖрдкрдХреЛ рдЯрд░реНрдорд┐рдирд▓ рд╡рд░реНрдг рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ,
    рдФрд░ рдПрдХ рд╡рд┐рд╢реЗрд╖ $ рдирд┐рдпрдо рдЬреЛ рд▓реЗрдХреНрд╕рд░ рд╣реЛрдиреЗ рдкрд░ рд╕рдХреНрд░рд┐рдп рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ
    рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреЗ рдЕрдВрдд рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ред
    рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ, re2c рдХрдИ рд╕рддреНрдпрд╛рдкрди рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
    рд╕реАрдорд╛, рджрдХреНрд╖рддрд╛ рдФрд░ рд╕рд░рд▓рддрд╛ рдореЗрдВ рднрд┐рдиреНрди-рднрд┐рдиреНрди рдЗрдирдкреБрдЯ рдХрд╛ рдЕрдВрдд
    рдЕрдиреБрдкреНрд░рдпреЛрдЧред рдирдИ рд╡рд┐рдзрд┐ рд▓реЗрдЦрди рдХреЛрдб рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХреА рдЧрдИ рд╣реИ
    рдкреНрд░рднрд╛рд╡реА рдФрд░ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рд░рд╣рддреЗ рд╣реБрдПред рдкреБрд░рд╛рдиреЗ рддрд░реАрдХреЗ
    рдЕрднреА рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЗрд╕реЗ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

  • рдПрдХ рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд╛рд╣рд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝реА рдЧрдИ
    /*!include:re2c "file.re" */ рдЬрд╣рд╛рдВ file.re
    рдпрд╣ рд╢рд╛рдорд┐рд▓ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рд╣реИ. Re2c рдлрд╝рд╛рдЗрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕рд╣рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рддрд╛ рд╣реИ,
    рд╕рд╛рде рд╣реА -I рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрдереЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рднреАред
    рд╢рд╛рдорд┐рд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрдиреНрдп рдлрд╝рд╛рдЗрд▓реЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ.
    Re2c include/ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ "рдорд╛рдирдХ" рдлрд╝рд╛рдЗрд▓реЗрдВ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
    рдкреНрд░реЛрдЬреЗрдХреНрдЯ - рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рд╡рд╣рд╛рдВ рдЬрдорд╛ рд╣реЛрдВрдЧреА
    рд░реЗрдЧреБрд▓рд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди, рдорд╛рдирдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЬреИрд╕рд╛ рдХреБрдЫред
    рдЕрдм рддрдХ, рд╢реНрд░рдорд┐рдХреЛрдВ рдХреЗ рдЕрдиреБрд░реЛрдз рдкрд░, рдпреВрдирд┐рдХреЛрдб рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рд╡рд╛рд▓реА рдПрдХ рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝реА рдЧрдИ рд╣реИред

  • рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝реА рдЧрдИ
    -t --type-header рд╡рд┐рдХрд▓реНрдк (рдпрд╛ рдЙрдкрдпреБрдХреНрдд) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рд╛рдордЧреНрд░реА
    рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди) рдФрд░ рдирдП рдирд┐рд░реНрджреЗрд╢ /*!header:re2c:on*/ рдФрд░
    /*!рд╣реЗрдбрд░:re2c:off*/. рдпрд╣ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ
    рдЬрдм re2c рдХреЛ рдЪрд░, рд╕рдВрд░рдЪрдирд╛рдУрдВ рдФрд░ рдореИрдХреНрд░реЛрдЬрд╝ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ,
    рдЕрдиреНрдп рдЕрдиреБрд╡рд╛рдж рдЗрдХрд╛рдЗрдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

  • Re2c рдЕрдм рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ UTF8 рд╢рд╛рдмреНрджрд┐рдХ рдФрд░ рд╡рд░реНрдг рд╡рд░реНрдЧреЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реИред
    рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, re2c "тИАx тИГy" рдЬреИрд╕реЗ рднрд╛рд╡реЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИред
    1-рдмрд┐рдЯ ASCII рд╡рд░реНрдгреЛрдВ рдХрд╛ рдЕрдиреБрдХреНрд░рдо e2 88 80 78 20 e2 88 83 79
    (рд╣реЗрдХреНрд╕ рдХреЛрдб), рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдпреВрдирд┐рдХреЛрдб рд╡рд░реНрдгреЛрдВ рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрдЪрдирд╛ рд╣реЛрдЧрд╛:
    "u2200x u2203y"ред рдпрд╣ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╣реИ
    рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ (рдЬреИрд╕рд╛ рдХрд┐ рд▓рдЧрд╛рддрд╛рд░ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ)ред рддреЛ рдЕрдм
    re2c рдПрдХ --рдЗрдирдкреБрдЯ-рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ ,
    рдЬреЛ рдЖрдкрдХреЛ рд╡реНрдпрд╡рд╣рд╛рд░ рдмрджрд▓рдиреЗ рдФрд░ "тИАx тИГy" рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
    2200 78 20 2203 79.

  • Re2c рдЕрдм -r --reuse рдореЛрдб рдореЗрдВ рдирд┐рдпрдорд┐рдд re2c рдмреНрд▓реЙрдХ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
    рдпрд╣ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдпрджрд┐ рдЗрдирдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрдИ рдмреНрд▓реЙрдХ рд╣реЛрдВ рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ рдХреБрдЫ рд╣реА рд╣реЛрдВ
    рдкреБрди: рдЙрдкрдпреЛрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

  • рдЕрдм рдЖрдк рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдФрд░ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
    рдирдП --рд╕реНрдерд╛рди-рдкреНрд░рд╛рд░реВрдк рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ . рдЬреАрдПрдирдпреВ рдкреНрд░рд╛рд░реВрдк рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддрд╛ рд╣реИ
    рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ: рд▓рд╛рдЗрди: рдХреЙрд▓рдо:, рдФрд░ MSVC рдкреНрд░рд╛рд░реВрдк рдлрд╝рд╛рдЗрд▓ рдирд╛рдо (рд▓рд╛рдЗрди, рдХреЙрд▓рдо) рдХреЗ рд░реВрдк рдореЗрдВред
    рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЖрдИрдбреАрдИ рдкреНрд░реЗрдорд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреА рд╣реИред
    рдПрдХ --verbose рд╡рд┐рдХрд▓реНрдк рднреА рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╕рдлрд▓ рд╣реЛрдиреЗ рдкрд░ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рдЬрдп рд╕рдВрджреЗрд╢ рдкреНрд░рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИред

  • рдлреНрд▓реЗрдХреНрд╕ рдХреЗ рд╕рд╛рде "рд╕рдВрдЧрддрддрд╛" рдореЛрдб рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рдХреБрдЫ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░
    рджреБрд░реНрд▓рдн рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЧрд▓рдд рдСрдкрд░реЗрдЯрд░ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ред
    рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ, -F --flex-support рд╡рд┐рдХрд▓реНрдк рдЖрдкрдХреЛ рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
    рдлреНрд▓реЗрдХреНрд╕ рд╢реИрд▓реА рдФрд░ re2c рд╢реИрд▓реА рдореЗрдВ рдорд┐рд╢реНрд░рд┐рдд, рдЬрд┐рд╕рд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░рдирд╛ рдереЛрдбрд╝рд╛ рдХрдард┐рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
    рдирдП рдХреЛрдб рдореЗрдВ рдлреНрд▓реЗрдХреНрд╕ рд╕рдВрдЧрддрддрд╛ рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ,
    рд▓реЗрдХрд┐рди re2c рдкрд╢реНрдЪрдЧрд╛рдореА рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИред

  • рд╡рд░реНрдг рд╡рд░реНрдЧ рдШрдЯрд╛рд╡ рдСрдкрд░реЗрдЯрд░ / рдЕрдм рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ
    рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЬреЛ рдЗрд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ,
    рдпрджрд┐ рдПрдХ рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╡рд░реНрдг рд▓рдВрдмрд╛рдИ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП UTF8)ред

  • рдЖрдЙрдЯрдкреБрдЯ рдлрд╝рд╛рдЗрд▓ рдЕрдм рдкрд░рдорд╛рдгреБ рд░реВрдк рд╕реЗ рдмрдирд╛рдИ рдЧрдИ рд╣реИ: re2c рдкрд╣рд▓реЗ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИ
    рдФрд░ рдЙрд╕рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рд▓рд┐рдЦрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЕрд╕реНрдерд╛рдпреА рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдмрджрд▓рдХрд░ рдЖрдЙрдЯрдкреБрдЯ рдХрд░ рджреЗрддрд╛ рд╣реИ
    рдПрдХ рдСрдкрд░реЗрд╢рди.

  • рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рдкреБрдирдГ рд▓рд┐рдЦрд╛ рдЧрдпрд╛; рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдирдП рдЬреЛрдбрд╝реЗ рдЧрдП
    рд╕рд┐рд░ рдмрдлрд╝рд░ рднрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
    ╨╕ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреЗ рдЕрдВрдд рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ.
    рдирдпрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкреНрд░рдкрддреНрд░ рдореЗрдВ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
    рдПрдХ рдкреЗрдЬ рдХрд╛ рд╡рд┐рд╕реНрддреГрдд рдореИрдиреБрдЕрд▓
    рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде (рд╕рдорд╛рди рд╕реНрд░реЛрдд рдореИрдирдкреЗрдЬ рдФрд░ рдСрдирд▓рд╛рдЗрди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЧрдП рд╣реИрдВ)ред
    рдлрд╝реЛрди рдкрд░ рд╕рд╛рдЗрдЯ рдХреА рдкрдардиреАрдпрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд╝рд░рд╛рдм рдкреНрд░рдпрд╛рд╕ рдХрд┐рдП рдЧрдП рд╣реИрдВред

  • рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, re2c рдиреЗ рдПрдХ рдЕрдзрд┐рдХ рд╕рдВрдкреВрд░реНрдг рд╕рдмрд╕рд┐рд╕реНрдЯрдо рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ
    рдбрд┐рдмрдЧрд┐рдВрдЧ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЛрдб рдЕрдм рд░рд┐рд▓реАрдЬрд╝ рдмрд┐рд▓реНрдб рдореЗрдВ рдЕрдХреНрд╖рдо рд╣реИ
    рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк --enable-debug рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рд▓рдЧрд╛ - рд▓рдЧрднрдЧ рдкреВрд░рд╛ рдПрдХ рд╕рд╛рд▓ред
рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдкрд░реЗрдЦрд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рд╡реНрдпрддреАрдд рд╣реБрдЖ
рд▓реЗрдЦ "рдПрдирдПрдлрдП рдкрд░ рдХреБрд╢рд▓ рдкреЙрдЬрд╝рд┐рдХреНрд╕ рд╕рдмрдореИрдЪ рдПрдХреНрд╕рдЯреНрд░реИрдХреНрд╢рди".
рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА libre2c рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдП рдЧрдП рд╣реИрдВ
(рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдФрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЕрдХреНрд╖рдо рд╣реИ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╡рд┐рдХрд▓реНрдк рджреНрд╡рд╛рд░рд╛ рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
--рд╕рдХреНрд╖рдо-libs)ред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдХрд▓реНрдкрдирд╛ рдореМрдЬреВрджрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИ
RE2 рдЬреИрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ, рд▓реЗрдХрд┐рди рдирдП рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢реЛрдз рдордВрдЪ рдХреЗ рд░реВрдк рдореЗрдВ
рдПрд▓реНрдЧреЛрд░рд┐рджрдо (рдЬрд┐рд╕реЗ рдлрд┐рд░ re2c рдпрд╛ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред
рдпрд╣ рдкрд░реАрдХреНрд╖рдг, рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдФрд░ рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдмрдирд╛рдиреЗ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рднреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

re2c рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдУрд░ рд╕реЗ рдЙрди рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдХреЛ рд╕рдВрднрд╡ рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХреА,
рдФрд░ рд╕рд╛рдорд╛рдиреНрдпрддрдГ рд╕рдореБрджрд╛рдп рдХреЛ рд╡рд┐рдЪрд╛рд░реЛрдВ, рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ, рдкреИрдЪ, рдордиреЛрдмрд▓ рдЖрджрд┐ рдХреЗ рд▓рд┐рдПред ;]

рд╕реНрд░реЛрдд: linux.org.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ