рдПрдХ рдмрд╛рд░ рдореБрдЭреЗ рдиреМрдХрд░реА рдмрджрд▓рдиреА рдкрдбрд╝реАред рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдкрд╛рдпрдерди, рд╕реА ++, рд╕реА #, рдФрд░ рдХреБрдЫ рдФрд░ рдЬреИрд╕реА рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдерд╛ред рдФрд░ рдЕрдм рдореБрдЭреЗ рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдерд╛ред рдкрд╣рд▓реЗ рдЗрдВрдкреНрд░реЗрд╢рди рдереЗ "рдХреНрдпрд╛ рд╣реИ?" рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдЬрд▓реНрджреА рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рдЕрдиреБрдХреВрд▓рди рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ред рдЖрдЧреЗ, рдореИрдВ рдЙрди рдореБрдЦреНрдп рдмрд┐рдВрджреБрдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдБрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдореБрдЭреЗ рдЖрджрдд рд╣реЛ рдЧрдИ рдереА рдпрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдореБрдЭреЗ рдЬрд▓реНрджреА рдФрд░ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭрдирд╛ рдерд╛ред
1.
рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рдирдпрд╣ рдореБрдЦреНрдп рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдЬрдм рддрдХ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░рддреЗ рддрдм рддрдХ рдереЛрдбрд╝рд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВрдиреЗ рдЬреЛ рдкрд╣рд▓реА рдмрд╛рдд рдкрдврд╝реА рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдЪреАрдЬ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЖрдк рдХреЗрд╡рд▓ рд╕рдВрд░рдЪрдирд╛рдУрдВ рд╕реЗ рдбреЗрдЯрд╛ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЪрд░ рдореЗрдВ рдмрд╛рдБрдз рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдПрдХ рджрд┐рдП рдЧрдП рднрд╛рд╖рд╛ рдореЗрдВ рд▓рдЧрднрдЧ рд╣рд░ рдЬрдЧрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЙрди рддреАрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛ рдЬреЛ рдореБрдЦреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдореИрдВ рд▓рдЧрднрдЧ рд▓рдЧрд╛рддрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред
рдЙрджрд╛рд╣рд░рдг 1. рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░:
{tuple_item_1, tuple_item_2} = tuple
- рдПрдХ 2-рддрддреНрд╡ рдЯрдкрд▓ рдХреЛ рджреЛ рдЪрд░ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рддрдм рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
[head_item | tail_list] = list
- рд╕реВрдЪреА рдореЗрдВ рдкрд╣рд▓реЗ рддрддреНрд╡ рдореЗрдВ рд╕реВрдЪреА рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд╣рд▓реЗ рддрддреНрд╡ рдХреЗ рдмрд┐рдирд╛ рд╕реВрдЪреАред
рдЙрджрд╛рд╣рд░рдг 2. рдорд╛рдорд▓реЗ рдореЗрдВ рддреБрд▓рдирд╛:
case get_elem(struct) do {:ok, elem} -> тАж {:error, reason} -> тАж end
Get_elem (рд╕реНрдЯреНрд░рдХреНрдЪрд░) рдлрд╝рдВрдХреНрд╢рди рдПрдХ рдЯрдкрд▓ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдХреЗрд╕ рдЖрдкрдХреЛ рддреБрд░рдВрдд рдбреЗрдЯрд╛ рдирд┐рдХрд╛рд▓рдиреЗ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдПрдХ рдФрд░ рдХреНрд░рдо рдЪреБрдирдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг 3ред рдлрд╝реАрдЪрд░ рдореИрдкрд┐рдВрдЧ:
def function_1(params, :ok) do end def function_1(params, :error) do end def function_1(params, _) do end
рдпрд╣рд╛рдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рд╣реА рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рджреЛ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд▓реЗрддрд╛ рд╣реИред рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдЖрдкрдХреЛ рдпрд╣ рдЪреБрдирдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╣реИред
рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ред рддреБрд▓рдирд╛ рд╣рдореЗрд╢рд╛ "рдЯреЙрдк-рдбрд╛рдЙрди" рд╣реЛрддреА рд╣реИред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдЬрдм рджреЛ рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ
function_1 рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкрд╣рд▓реЗ рдЬрд╛рдБрдЪ рдХрд░реЗрдЧрд╛ рдХрд┐ рджреВрд╕рд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИ
: рдареАрдХ рд╣реИ ред рдпрджрд┐ рдкрд╣рд▓рд╛ рдЪреЗрдХ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЪреЗрдХ рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
: рддреНрд░реБрдЯрд┐ ред рдФрд░ рдЕрдЧрд░ рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ, рддреЛ рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдо рд╡рд┐рдзрд┐ рдХреЗ рддреАрд╕рд░реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдВрдЧреЗред рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рдХрд╛ рдЕрд░реНрде рд╣реИ "рдХреЛрдИ рднреА рдбреЗрдЯрд╛", рд╕рд╛рде рд╣реА рдпрд╣ рддрдереНрдп рднреА рд╣реИ рдХрд┐ рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ рд╣рдореЗрдВ рдмреНрдпрд╛рдЬ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдпрджрд┐
function_1 (params, _) рд╕реВрдЪреА рдореЗрдВ рдкрд╣рд▓рд╛ рдерд╛, рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣рдореЗрд╢рд╛ рдЗрд╕рдХрд╛ рдЪрдпрди рдХрд░реЗрдЧрд╛, рдФрд░ рдЕрдиреНрдп рджреЛ рддрд░реАрдХреЗ рдХрднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рдкреИрдЯрд░реНрди рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ, рддреЛ рдПрдХ рдЕрдкрд╡рд╛рдж рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
2.
рдкрд╛рдЗрдкрд▓рд╛рдЗрдирдпреЗ рдирд┐рдореНрди рд░реВрдк рдХреЗ рдирд┐рд░реНрдорд╛рдг рд╣реИрдВ:
param_1 |> func_1() |> func_2(param_2) тАж
рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдХреБрдЫ рдХрдЪрд░рд╛ рд▓рдЧрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдпрд╛рдж рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЕрдореГрдд рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рднрд╛рд╖рд╛ рд╣реИред рдФрд░ рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рднрд╛рд╖рд╛ рдореЗрдВ, рдордзреНрдпрд╡рд░реНрддреА рдЪрд░ рдХреЗ рдмрд┐рдирд╛, рдлрд╝рдВрдХреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдЧрдгрдирд╛ рдХрд░рдирд╛ рдХрд╛рдлреА рд╕рд╛рдорд╛рдиреНрдп рд╣реИред рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╕рд┐рд░реНрдл рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╣реИред рднрд╛рд╖рд╛ рд╕реНрд╡рдпрдВ рдПрдХ рдЪрд░ рдпрд╛ рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдкреВрдЫрддреА рд╣реИред
рдКрдкрд░ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
func_2(func_1(param_1), param_2)
рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдкрд┐рдЫрд▓реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред
3.
рдЪрдХреНрд░реЛрдВ рдХрд╛ рдЕрднрд╛рд╡рдЕрдореГрдд тАЛтАЛрдореЗрдВ рдЪрдХреНрд░ рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕ рддрдереНрдп рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЭрдЯрдХрд╛ рджрд┐рдпрд╛, рдФрд░ рдпрд╣ рд╕рдордЭрдирд╛ рд╕рдмрд╕реЗ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рдж рдореЗрд░реА рд░рд╛рдп рдФрд░ рд╡рд┐рдЬрди рдЖрддрд╛ рд╣реИ, рдЬреЛ рд╢рд╛рдпрдж рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдФрд░ рд╕рд┐рджреНрдзрд╛рдВрдд рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ред
рдЗрд╕ рддрдереНрдп рдХреА рдЬрдбрд╝реЗрдВ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░рддрд┐рдорд╛рди рдореЗрдВ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдХрд╛рд░реНрдп рд╣реИ рдЬреЛ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдордзреНрдпрд╡рд░реНрддреА рд░рд╛рдЬреНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рдЪрдХреНрд░, рдмрджрд▓реЗ рдореЗрдВ, рдмрд╛рд░-рдмрд╛рд░ рдЪрдХреНрд░ рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░реА рд░рд╛рдЬреНрдп рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рд╣реИрдВред
рджреЛ рдЪреАрдЬреЗрдВ рд╕рд╛рдЗрдХрд┐рд▓ рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рддреА рд╣реИрдВ - рднрд╛рд╖рд╛ рдХреЗ рдЕрд╕рдВрдЦреНрдп рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рддрд░реАрдХреЗред
рдЫреЛрдЯреА рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░ред1. рдЕрдореГрдд рдореЗрдВ рдХреЛрдИ рдХрдХреНрд╖рд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рдВрджрд░реНрдн рд╣реИрдВред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╕рдВрджрд░реНрдн рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рдХрдХреНрд╖рд╛рдУрдВ рдХреА рдЬрдЧрд╣ рд▓реЗ рд░рд╣реЗ рд╣реИрдВред рдПрд╕-рд╢реЙрдкрд░ рдХреА рдирдЬрд╝рд░ рд╕реЗ рд╕рдВрджрд░реНрдн рдХрд╛ рдирд┐рдХрдЯрддрдо рд╡рд┐рд╡рд░рдг: рд╕рдВрджрд░реНрдн рдПрдХ рд╡рд░реНрдЧ рдФрд░ рд╢рд╛рд░реНрдк рдореЗрдВ рдПрдХ рдиреЗрдорд╕реНрдкреЗрд╕ рдХреЗ рдмреАрдЪ рдПрдХ рдХреНрд░реЙрд╕ рд╣реИ, рдФрд░ рд╕рдВрджрд░реНрдн рдиреЗрдорд╕реНрдкреЗрд╕ рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рд╣реИред
2. рдкрд░рдорд╛рдгреБред рдЕрдореГрдд тАЛтАЛрдореЗрдВ рдкрд░рдорд╛рдгреБ рдЬреИрд╕реА рдХреЛрдИ рдЪреАрдЬ рд╣реЛрддреА рд╣реИред рдПрдХ рдкрд░рдорд╛рдгреБ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ "рд▓реЗрдмрд▓" рдХрд╛ рдПрдХ рдкреНрд░рдХрд╛рд░ рд╣реИред рдЙрдирдХреЗ рдЗрд▓рд╛рдЬ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╡рд┐рд╢реЗрд╖ рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВред рдЗрд╕ рд▓реЗрдЦ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рджреЛ рдкрд░рдорд╛рдгреБ рдереЗ
:: ok ,: error ред рдкрд░рдорд╛рдгреБрдУрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдФрд░ рдЬрдЯрд┐рд▓ рддрд░реНрдХ рдирд┐рд░реНрдорд╛рдг рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИрдВред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдпреЗ рд╕реНрдерд┐рд░рд╛рдВрдХ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдореВрд▓реНрдп рдЙрдирдХрд╛ рдирд╛рдо рд╣реИред рдПрдХ рдкрд░рдорд╛рдгреБ рдореЗрдВ рд╣рдореЗрд╢рд╛ рдПрдХ рдирд╛рдо рдХреЗ рд╕рд╛рдордиреЗ рдПрдХ ":" рд╣реЛрддрд╛ рд╣реИред
3. рд╡рд┐рдзрд┐ рд╣реЗрдбрд░ рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╕реЗ рдкрдврд╝реЗрдВред рдЕрдореГрдд тАЛтАЛрдореЗрдВ, рдпрд╣ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдерд╛рдЧрдд рд╣реИ (рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЕрдХреНрд╕рд░ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ):
рдФрд░ рдлрд╝рдВрдХреНрд╢рди / 2 ред рдЗрд╕реЗ "рдлрд╝рдВрдХреНрд╢рди" рдФрд░ рдПрд░рд┐рдЯреА рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред Arity рд▓реА рдЧрдИ рддрд░реНрдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред
рдХреНрдпрд╛ рдореБрдЭреЗ рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реАредрд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдПрдВрдбреНрд░реЙрдЗрдб "рдЕрдореГрдд рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓" рдкрд░ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╣реИред рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рднрд╛рд╖рд╛ рдФрд░ рдЗрд╕рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдореБрдЦреНрдп рдмрд┐рдВрджреБрдУрдВ рдХреЛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдмрд╕ рдореЗрдВ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХрдо: рдпрд╣ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕рднреА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИред
рджреВрд╕рд░реА рдмрд╛рдд, рдХрд┐рддрд╛рдм "рдЗрдВрдЯреНрд░реЛрдбрдХреНрд╢рди рдЯреВ рдПрд▓рд┐рдХреНрд╕рд┐рд░" рдХреЛ рд╕реЗрдиреЛрд░реЗрди рдПрд╕ред, рдИрд╕реЗрдирдмрд░реНрдЧ рдбреА рдиреЗ рд▓рд┐рдЦрд╛ рдерд╛ ... рдпрд╣ рдХрд┐рддрд╛рдм рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рджрд┐рдЦрд╛рддреА рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рдордЭрд╛рддреА рд╣реИред рдпрд╣ рдкрдврд╝рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдФрд░ рдЖрдкрдХреЛ рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдХрд╛рдо рдореЗрдВ рдХрд╛рдлреА рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рд░реВрд╕реА рдореЗрдВ рднреА рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рддреАрд╕рд░рд╛, рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдСрдирд▓рд╛рдЗрди рдкреНрд░рд▓реЗрдЦрдиред рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рдФрд░ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЖрд╡рд╢реНрдпрдХ рдЕрдиреБрднрд╛рдЧреЛрдВ / рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдЦреЛрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рд╡рд╣ рд╕рдм рд╣реИред
рд╕рд╛рдордЧреНрд░реА рдХреА рд╕реВрдЪреА:
1.
рдЕрдореГрдд тАЛтАЛрдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓2. рд╕реЗрдирд▓реЛрд░рди рдПрд╕ред, рдИрд╕реЗрдирдмрд░реНрдЧ рдбреАред рдПрд▓рд┐рдХреНрд╕рд┐рд░ рд╕реЗ рдкрд░рд┐рдЪрдпред рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рдкрд░рд┐рдЪрдпред - рдУ'рд░реЗрд▓реА, 2017ред
3.
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬред